Необходима помощь в одном моменте с Solver в VBA.
Имеется цикл в программе, результатом которого является вызов Solver'а для поиска решений с условиями.
addr_c = opened.Sheets("Decl.coeff").Cells(4, b).Address
addr_cc = opened.Sheets("Decl.coeff").Cells(3, b).Address
SolverLoad (Decl.coeff!A10)
SolverOk SetCell:=addr_c, MaxMinVal:=3, ValueOf:=0, ByChange:=addr_cc
x1 = "1"
x2 = "0"
SolverAdd CellRef:=addr_cc, Relation:=3, FormulaText:=x2
SolverAdd CellRef:=addr_cc, Relation:=1, FormulaText:=x1
SolverSolve True
SolverReset
Программа ищет ответ на уравнение вида: qt=qi/(1+b*t*Di)^(1/b)
, где Di является изменяемым числом и лежит между 0 и 1.
Проблема заключается в следующем. Программа при b=1 отлично находит Di в заданных пределах, а при b=0.7, к примеру, выдает отрицательно значение Di, т.е. не выполняет условия. Не могу разобраться в чем проблема, потому что, если сделать поиск решения вручную, то решение будет верным.
.