次の方法で共有


SolverChange 関数

既存の制約条件を変更します。 [データ | 分析] グループで [ソルバー] をクリックし、[ソルバー パラメーター] ダイアログ ボックスで [変更] をクリックするのと同じです。

メモ ソルバー アドインは既定では有効になっていません。 この関数を使う前に、ソルバー アドインを有効にしてインストールしておく必要があります。 この方法については、「ソルバー関連の VBA 関数を使用する」を参照してください。 ソルバー アドインがインストールされたら、このアドインへの参照を設定する必要があります。 Visual Basic エディターでモジュールをアクティブにした状態で、[ツール] メニューの [参照設定] をクリックし、[使用できる参照][ソルバー] を選択します。 [Solver] チェック ボックスが [参照可能なライブラリ ファイル] に表示されない場合は、[参照] をクリックして \Program Files\Microsoft Office\Office14\Library\SOLVER サブフォルダーにある Solver.xlam を開きます。

SolverChange( CellRef, Relation, FormulaText)

CellRef 必須 バリアントです。 制約条件式の左辺を設定する値が入力されているセルまたはセル範囲への参照を指定します。 関係 必須 の整数。 制約の左右の間の算術関係。 4 または 5 を選択した場合、 CellRef は調整可能な (変更可能な) セルを参照する必要があり、 FormulaText を指定しないでください。

Relation 比較関係
1 <=
2 =
3 >=
4 CellRef によって参照されるセルには、整数である最終的な値が必要です。
5 CellRef によって参照されるセルの最終的な値は、0 (ゼロ) または 1 である必要があります。
6 CellRef によって参照されるセルには、すべて異なる整数の最終的な値が必要です。

FormulaText 省略可能 なバリアント型 (Variant)。 制約条件式の右辺の値を指定します。

注釈

CellRefRelation が既存の制約と一致しない場合は、SolverDelete 関数と SolverAdd 関数を使用して制約を変更する必要があります。

次の使用例は、シート 1 に保存されている既存のモデルを読み込み、制約条件のうちの 1 つを変更して、再びモデルの解を求めます。

Worksheets("Sheet1").Activate 
SolverLoad loadArea:=Range("A33:A38") 
SolverChange cellRef:=Range("F4:F6"), _ 
 relation:=1, _ 
 formulaText:=200 
SolverSolve userFinish:=False

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。