EXCEL VBA不会在从图表按钮

时间:2018-05-03 09:30:49

标签: excel-vba vba excel

这个问题可以替代这个问题:

EXCEL VBA ignores Solver changes values

因为似乎还有另一个问题在原始问题中没有被理解。

我有以下Excel VBA代码片段来解决最小化问题:

SolverOk SetCell:="$AP$13", MaxMinVal:=2, ValueOf:=0, ByChange:="$AP$9:$AP$11", Engine:=1
SolverSolve UserFinish:=True

这是通过按下工作表上的按钮触发的宏(Do_Fit)运行的。我在图表表格上有另一个按钮(显示合适),它也运行Do_fit。按下工作表按钮时SOLVER运行,但按下图表按钮时则不运行。工作表有一个Worksheet_change方法,其中包含以下语句:

If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub

处理对工作表特定部分所做的更改,但不受Do_fit的影响。不确定这是否与问题有关,但认为值得一提。更新:当我禁用Worksheet_Change宏时,按下图表按钮时,SOLVER仍然无法运行

我尝试使用SolverReset重置问题,但这会产生错误,表示Excel已用尽。

我不明白为什么当我按下工作表按钮而不是图表按钮时SOLVER会运行,并且会对如何解决此问题提出任何建议

谢谢!

1 个答案:

答案 0 :(得分:1)

根据Jon Peltier的建议,在Sheets("calcs").Activate语句之前向VBA代码添加calcsSolverOk是工作表的名称)。谢谢!