我有以下代码,在较大的宏中重复多次。我发现,如果我指定搜索方法(通过包含“Engine:= ..”),宏将关闭自动计算(在公式>中找到)计算选项)并将其切换为手动。这基本上将优化固定在单个点上,即使下面的优化是在循环上,因为它优化到不同的值。由于此问题导致彼此链接的单元格无法更新,因此优化无效。
我可以在不指定搜索方法的情况下运行宏,但理想情况下我希望能够选择它。有什么想法吗?
SolverReset
SolverOK SetCell:="$K$21", MaxMinVal:=1, ValueOf:="0", ByChange:="$D$41:$H$41", Engine:=2
SolverAdd CellRef:="$K$25", Relation:=2, FormulaText:="1"
SolverAdd CellRef:="$D$41:$H$41", Relation:=3, FormulaText:="0"
SolverAdd CellRef:="$D$41:$H$41", Relation:=3, FormulaText:="$D$12:$H$12"
SolverAdd CellRef:="$D$41:$H$41", Relation:=1, FormulaText:="$D$13:$H$13"
SolverSolve UserFinish:=True
SolverFinish KeepFinal:=1
Range("K23").Value = Range("K21").Value