0

我试图让求解器在多行数据上重复。到目前为止,这是我的代码。我是这方面的新手,这适用于 2 行。我希望它一直运行到最后一行。在阅读了类似问题的回复后,我在范围行中添加了内容。

Sub prgopt()
'
' prgopt Macro
'

'
    SolverOk SetCell:="$C$2", MaxMinVal:=2, ValueOf:=0, ByChange:="$A$3:$B$3", _
        Engine:=1, EngineDesc:=" GRG Nonlinear "
    SolverSolve
    Range("$C$2").Offset(Count, 0).Select
    SolverOk SetCell:="$C$3", MaxMinVal:=2, ValueOf:=0, ByChange:="$A$3:$B$3", _
        Engine:=1, EngineDesc:=" GRG Nonlinear "
    SolverSolve
    End Sub

感谢您的时间,感谢您的帮助 C

4

1 回答 1

0

尝试这个:

Sub prgopt()

'
' prgopt Macro
'

'

    Dim c As Range
    dim nRows as int
    nRows = 2
    For Each c In Range("$C$2:$C$3")
        SolverOk SetCell:=c.Address, MaxMinVal:=2, ValueOf:=0, ByChange:=c.Offset(0, -nRows).Resize(1, nRows), _
            Engine:=1, EngineDesc:=" GRG Nonlinear "
        SolverSolve userfinish:=True
        SolverFinish keepfinal:=1
    Next

    End Sub

根据需要更改范围和 nRows(因子范围的宽度)。希望这可以帮助。

于 2013-06-28T01:28:38.440 回答