Excel VBA:使用解算器时出现运行时错误1004

Excel VBA:使用解算器时出现运行时错误1004,excel,vba,Excel,Vba,我是VBA新手,在宏中使用解算器时遇到一些问题。我将一个宏分配给Excel中的一个命令按钮,它们可以完美地计算所有内容,但最后也出现了一个丑陋的错误(“运行时错误1004,对象的方法计算\u应用程序失败”) 我在解算器宏中遇到了相同的错误 我尝试了几个Excel论坛中提到的一些东西。如评论所示,我确实添加了SolverFinish,并将所有SetCells包装为Range类型。我还保存了文件并退出了Excel 当我回来的时候,弹出的错误消失了。我在VBA中运行了一些SolverOk之后,通过GU

我是VBA新手,在宏中使用解算器时遇到一些问题。我将一个宏分配给Excel中的一个命令按钮,它们可以完美地计算所有内容,但最后也出现了一个丑陋的错误(“运行时错误1004,对象的方法计算\u应用程序失败”)


我在解算器宏中遇到了相同的错误

我尝试了几个Excel论坛中提到的一些东西。如评论所示,我确实添加了
SolverFinish
,并将所有
SetCells
包装为
Range
类型。我还保存了文件并退出了Excel


当我回来的时候,弹出的错误消失了。

我在VBA中运行了一些
SolverOk
之后,通过GUI使用Solver得到了这个运行时错误。我在MSDN上看到一篇帖子,它建议在运行
solverrok
之前添加一个
SolverReset
。我在即时窗口中运行了
SolverReset
,这消除了运行时错误


以前我没有拉姆·纳拉西姆汉推荐的
SolverFinish
,如果我有,那可能会在第一时间阻止错误,但这只是猜测。

尝试将
SetCell:=“$L$19”
更改为
SetCell:=Range($L$19”)
。另外,在SolverSolveSolverReset解决了我的问题后,尝试添加SolverFinish,而SolverFinish没有帮助/足够。
Sub serieus1()
'
' serieus1 Macro
'  

'
    SolverReset
    SolverAdd CellRef:="$R$15", Relation:=2, FormulaText:="1"
    SolverAdd CellRef:="$L$18", Relation:=2, FormulaText:="$B$3"
    SolverOk SetCell:="$L$19", MaxMinVal:=2, ValueOf:=0, ByChange:="$L$15:$Q$15", _
        Engine:=1, EngineDesc:="GRG Nonlinear"
    SolverSolve

End Sub