2017-09-04 76 views
0

我是VBA的新手,有問題。Advise Solver Loop VBA

在Excell中,我使用解算器估計了3個值。目標設定爲一個確切的值,其中包括6個簡單的約束條件。

enter image description here

現在我想僅通過遞增地增加目標值,以重新估計這些3個值(因此限制保持不變)。

我想在VBA中使用循環,但我不知道從哪裏開始,因爲我不是在VBA中的臨。

任何人都可以幫忙嗎?

Ciao!

回答

0

你可以製作一個循環來通過vba調整解算器的目標值。在vba編輯器中,您需要添加對求解器的引用(菜單工具 - >引用 - >檢查求解器)。

在循環我

用於設置目標,一旦溶液被發現,相應的範圍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 
+0

發動機:= 1是單純形法, EngineDesc不是必需的,我想 – kindoflost