2

2つの入力が与えられた方程式をパラメータ化できるマクロを設定しようとしています。ただし、ソルバーにセルの値を「値」として使用させる方法がわかりません。私が今持っているマクロは次のとおりです。

Sub Macro2()

   SolverReset
   SolverAdd CellRef:="$G$2", Relation:=1, FormulaText:="100"
   SolverAdd CellRef:="$G$2", Relation:=3, FormulaText:="0"
   SolverOk SetCell:="$M$6", MaxMinVal:=3, ValueOf:="$B$2", ByChange:="$G$2", Engine:= _
       3, EngineDesc:="Evolutionary"
   SolverSolve

End Sub

マクロが実行されると、[ソルバーの結果]ボックスがポップアップ表示されます。Error in model. Please verify that all cells and Constraints are valid.

私がやりたいことを達成する方法はありますか?

4

1 に答える 1

2

ナット

「ValueOf」パラメータのセルを直接参照する代わりに、参照されるセルの変数を使用します。例えば:

Sub Macro2()

    Dim target As Double
    target = Range("B2")

    SolverReset
    SolverAdd CellRef:="$G$2", Relation:=1, FormulaText:="100"
    SolverAdd CellRef:="$G$2", Relation:=3, FormulaText:="0"
    SolverOk SetCell:="$M$6", MaxMinVal:=3, ValueOf:=target, ByChange:="$G$2", _
      Engine:= 3, EngineDesc:="Evolutionary"
    SolverSolve

End Sub

それがあなたの問題に対処することを願っています。

よろしく、サル

于 2012-11-26T05:10:30.477 に答える