[英]Automate Solver with varying constraints range
我想創建VBA以使用以下參數運行規划求解:
設定目標:G6
最小化
通過更改變量單元格:J6:J ----
遵守約束條件:L6:L-- = N6:N--(例如:L6 = N6,L7 = N7,...)
問題在於變量和約束范圍在我鍵入----和-的地方有所不同。 我知道變量單元格范圍一直到單元格N1上的數字,而約束單元格范圍一直到單元格N3上的數字。
我不知道如何創建VBA,但我嘗試過(不起作用):
Sub SolverMacro()
Dim var
Dim var2
var = Range("Sheet2!$N$1").Value
var2 = Range("Sheet2!$N$3").Value
SolverReset
SolverAdd CellRef:=Range("L6", "L" & var2), Relation:=2, FormulaText:=Range("N1", "N" & var2)
SolverOptions Assumenonneg:=True
SolverOk SetCell:="$G$6", _
MaxMinVal:=2, _
ByChange:=Range("J6", "J" & var)
SolverSolve userFinish:=True
End Sub
我該如何工作?
感謝大家! 我找到了答案,並且現在可以正常工作。 起作用的代碼是:
Sub SolverMacroX()
SolverReset
Dim x As Integer
Dim Aux As Long
Aux = Range("$L$3")
For x = 6 To Aux
SolverAdd CellRef:="L" & x, Relation:=2, FormulaText:=Range("N" & x)
Next
SolverOptions AssumeNonNeg:=True
SolverOk SetCell:="$G$6", _
MaxMinVal:=2, _
ByChange:=Range("J6", "J" & Range("$J$3")), _
SolverSolve userFinish:=True
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.