Excel Solver в VBA дает другие результаты, чем выполнение Solver вручную - PullRequest
0 голосов
/ 07 февраля 2019

Я не знаю, связано ли это с нелинейным алгоритмом GRG, как указывает айхан: Excel Solver не дает согласованных результатов

Но когда я запускаю Solver из макросасо следующим кодом:

SolverReset
SolverOk SetCell:="$F$5", _
         MaxMinVal:=3, _
         ValueOf:=valor, _
         ByChange:="$D$2", _
         EngineDesc:="GRG Nonlinear"
SolverSolve userFinish:=True

Я не получаю те же результаты, что и при ручном выполнении

Difference

IЗнаю, что разница довольно мала.Это нормально?

Спасибо

1 Ответ

0 голосов
/ 07 февраля 2019

Начальные значения для Солвера должны быть одинаковыми для обоих методов, потому что Солвер не использует точный математический метод, а использует метод числовой итерации, чтобы найти решение.Таким образом, результаты могут отличаться, если параметры запуска отличаются.

...