我正在尝试使用求解器录制宏。我正在尝试最大化细胞M24,改变细胞D8,E8,D13和E13。 D8,E8,D13和E13均大于0,F8 = D8 + E8 = 1,F13 = D13 + E13 = 1。我的代码不起作用。基本上,它根本没有改变单元格D8,E8,D13和E13中的任何值?有人可以指出我做错了吗?
Sub SolverMacro1()
'
' SolverMacro1 Macro
'
Worksheets("Optimise").Activate
SolverAdd CellRef:="$D$8", Relation:=3, FormulaText:="0"
SolverAdd CellRef:="$E$8", Relation:=3, FormulaText:="0"
SolverAdd CellRef:="$F$8", Relation:=2, FormulaText:="1"
SolverAdd CellRef:="$D$13", Relation:=3, FormulaText:="0"
SolverAdd CellRef:="$E$13", Relation:=3, FormulaText:="0"
SolverAdd CellRef:="$F$13", Relation:=2, FormulaText:="1"
SolverOk SetCell:="$M$24", MaxMinVal:=1, ByChange:="$D$8:$E$8 & $D$13:$E$13"
SolverSolve
End Sub
非常感谢提前!
答案 0 :(得分:0)
尝试将传递给ByChange
的{{1}}参数的值更改为SolverOk
。您可能还想在激活工作表之后但在调用其他Solver过程之前调用"$D$8:$E$8,$D$13:$E$13"
。