Excel VBA解算器-为什么我没有得到有效的解决方案?

时间:2020-09-30 13:40:43

标签: excel vba excel-solver

我正在尝试使用Excel Solver解决优化问题。当我手动执行时,它工作正常。但是当我在VBA中尝试时,出现以下错误消息: 模型错误。请验证所有单元格和约束均有效。

Sub solv()
Dim rng As Range
Set rng = ActiveWorkbook.Worksheets("Sheet1").Range("B1:B3")

SolverReset
SolverOk SetCell:=C5, MaxMinVal:=1, ValueOf:=0, ByChange:=rng, Engine:=2, EngineDesc:="Simplex LP"
SolverAdd CellRef:=rng, Relation:=5, FormulaText:="binary"
SolverSolve

End Sub

运行代码时,计算也会从自动更改为手动。

我已经尝试过对SetCell,ByChange和CellRef进行各种不同的更改,但是没有任何效果。有人可以协助医治吗?

Excel sheet

1 个答案:

答案 0 :(得分:0)

如果我正确理解,这似乎可行。宏记录器实际上在这里很有帮助:

Sub solv()
Dim rng As Range
Set rng = ActiveWorkbook.Worksheets("Sheet1").Range("B1:B3")

SolverReset
SolverOk SetCell:="C5", MaxMinVal:=1, ByChange:=rng.Address, Engine:=2
SolverAdd CellRef:=rng.Address, Relation:=5, FormulaText:="binary"
SolverSolve

End Sub
相关问题