我是VBA的新手并且有一个问题。
在Excell中,我通过使用求解器估计了3个值。目标设定为精确值,包括6个简单约束。现在我想通过逐步增加目标值来重新估计这3个值(因此约束保持不变)。
我在考虑在VBA中使用循环,但我不知道从哪里开始,因为我不是VBA中的Pro。
任何人都可以帮忙吗?
侨!
答案 0 :(得分:0)
你可以做一个循环来通过vba调整求解器的目标值。在vba编辑器中,您需要添加对求解器的引用(菜单工具 - > references-> check solver)。
在循环中i用于设置目标,一旦找到解决方案,相应的范围B9:D9将从F列复制。
Dim i
For i = 1 To 40
SolverOk SetCell:="B21", MaxMinVal:=3, ValueOf:=i, ByChange:="B9:D9", Engine:= _
1, EngineDesc:="GRG Nonlinear"
SolverSolve True
Range("B9:D9").Copy Cells(i, "F")
Next i