-1
对于VBA,MACRO我是全新的。我需要一个循环以优化在Excel中运行求解器以循环优化具有约束条件的目标单元格
- 首先,它具有运行与约束细胞(R10)
- 然后,它应该转移到下一列两个目标和约束的目标函数细胞(N10)。即Cell O10 & Cell S10,类似地再进行2次。
- 然后它应该转移到第i + 9行并重复相同的步骤分析。
精确地有两个循环,一个用于列循环4次和一个循环,直到它结束。
对于VBA,MACRO我是全新的。我需要一个循环以优化在Excel中运行求解器以循环优化具有约束条件的目标单元格
精确地有两个循环,一个用于列循环4次和一个循环,直到它结束。
有几个问题...
Cells(x,y)
时,应始终使用工作表进行限定。下面的代码应该实现您的目标,并通过适当的修改来标记。
Option Explicit
Sub mySolve()
Dim totalrows As Long
totalrows = 1000 ' *** use whatever formula finds your last row
Dim row As Long
Dim col As Long
Dim myWS As Worksheet
Dim SetAddr As String, ChgAddr As String, ConAddr As String
Set myWS = ActiveSheet
For row = 10 To totalrows Step 9
For col = 14 To 17 Step 1
SetAddr = myWS.Cells(row, col).Address
ChgAddr = myWS.Cells(row, col + 4).Address '*** you don't specify in your question
ConAddr = myWS.Cells(row, col + 4).Address
SolverReset
SolverOk SetCell:=SetAddr, MaxMinVal:=2, ByChange:=ChgAddr, Engine:=3
SolverAdd CellRef:=ConAddr, Relation:=1, FormulaText:="2" '*** what is your constraint
SolverSolve Userfinish:=True
Next col
Next row
End Sub
您的代码的屏幕截图是提供您已完成的示例的不佳方式。 – OldUgly
特赦!我是个开胃菜。将学习如何以可重现的方式表示它。并感谢您的意见。 –