0
我試圖通過使用求解器來記錄一個宏。我試圖最大化細胞M24,改變細胞D8,E8,D13和E13。 D8,E8,D13和E13均大於0,並且F8 = D8 + E8 = 1,F13 = D13 + E13 = 1。我的代碼不起作用。基本上,它不會改變單元格D8,E8,D13和E13中的任何值?有人能指出我做錯了什麼嗎?通過使用VBA最大化Excel求解器不起作用
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
非常感謝提前!
嗨布萊恩,我試過你的建議......數值仍然沒有改變... – user2707605
當你運行宏時會發生什麼? 「解算器結果」對話框是否出現?運行宏之後,如果手動打開Solver(使用菜單),「Solver Parameters」對話框會顯示您期望的內容嗎? –
嗨,大腦,我運行宏後,對話框顯示詢問是否要保存求解器值或保持原始,但細胞沒有變化......這很奇怪。另一個奇怪的是,我運行宏後,公式爲E8 = 1-D8和E13 = 1-D13,所有公式消失,只剩下原始值。是的,運行宏後,當我手動打開求解器時,參數就是我爲上面的代碼設置的參數。 – user2707605