2016-08-10 18 views
0

我遇到了問題,而我的解算器腳本實際上並沒有解決當我在工作表之間移動時。求解器應該通過每列更改一列10個單元中的5個單元使參考單元最大爲1。VBA解算器不復位

wslist = Array("A", "B", "C") 
For j = LBound(wslist) To UBound(wslist) 
Worksheets(wslist(j)).Activate 
For i = 0 To 9 
    SolverReset 
    SolverOptions Precision:=0.1 
    SolverOk SetCell:=Cells(7 + i * 4, 49), MaxMinVal:=1, ValueOf:=0, ByChange:=Range(Cells(6, 18 + i), Cells(10, 18 + i)), _ 
    Engine:=1, EngineDesc:="GRG Nonlinear" 
SolverAdd CellRef:=Cells(7 + i * 4, 49), Relation:=1, FormulaText:="1" 
*Constraints Omitted* 
    Next i 
Next j 
Application.ScreenUpdating = True 

求解似乎並不當我從工作表A移動到B,先運行IE腳本運行的表的罰款,但是當它想移動到表B中的腳本「運行」,但是求解並不能改變什麼。如果我經歷並手動輸入完全相同的參數進入解算器,它會運行。

任何幫助非常感謝,謝謝。

回答

0

更新:當您切換工作頁時,請不要調用SolverReset,而應運行Application.Run「SolverReset」