在Excel中使用For和Next循环存储求解器结果

时间:2016-03-20 18:07:02

标签: excel vba for-loop solver

我想使用重复求解器51次,并将每个求解器计算的结果存储在Excel的单独单元格中。这是我下面的VBA脚本;但是,我遇到了脚本问题。存储的结果仅显示第51个,即最后的计算结果。这是一个简单的脚本,但我可以弄清楚我做错了什么。谢谢你的帮助!

Private Sub Button1_Click()
Dim j As Integer
For j = 1 To 51
Range("m4") = j
solversolve UserFinish:=True
solversolve(UserFinish:=True) = Range("Q" & j + 3)
Next j
End Sub

1 个答案:

答案 0 :(得分:1)

假设目标函数在Range(“m4”)中,并且您想要从Range(“Q4”)开始解决解决方案,那么请尝试:

Private Sub Button1_Click()`  
  Dim j As Integer
  For j = 1 To 51
    solversolve UserFinish:=True
    Range("Q" & j + 3).value=Range("m4").value
  Next j
End Sub

但是,您没有对模型进行更改以重新运行它?有任何随机值吗?