dポイントプレゼントキャンペーン実施中!

Excelのマクロ自動記録に関する質問です。
ソルバーを繰返し含む処理をマクロの自動記録で実行したいのですが、Excelのシート上で1つづつ手で実行すると問題なく処理出来ている手順を自動記録して実行すると“コンパイルエラー:SubまたはFunctionが定義されていません”とエラーが出ます。
下記の“SolverOk”の部分に問題があると表示されます。

Range("D19").Select
ActiveCell.FormulaR1C1 = "180"
Range("D19").Select
Selection.Copy
Range("J19").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("D24").Select
Application.CutCopyMode = False
Selection.Copy
Range("J22").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
SolverOk SetCell:="$M$18", MaxMinVal:=3, ValueOf:="0", ByChange:="$D$19"
SolverSolve
  ---
  ---
どうすれば解決できるか教えて下さい。
よろしくお願いします。

A 回答 (4件)

「SolverOk 関数」をヘルプで調べてください。


詳しく書いていますよ。

あと、Solver.xls でなくて Solver.xla ですよ。

ヘルプの内容:
この関数を使う前に、ソルバー アドインへの参照を設定しておいてください。Visual Basic モジュールをアクティブにした状態で、[ツール] メニューの [参照設定] をクリックし、[参照可能なライブラリ ファイル] の [Solver.xla] チェック ボックスをオンにします。このチェック ボックスが [参照可能なライブラリ ファイル] に表示されない場合は、[参照] をクリックしてから、Office をセットアップしたフォルダの \Office\Library にある Solver.xla を開きます。


Officeをデフォルトでインストールしたとは、下記を指定します。(Offce2000)

C:\Program Files\Microsoft Office\Office\Library\Solver.xla
    • good
    • 0

http://www.komiyama.t.u-tokyo.ac.jp/~koyama/html …
に解説があります。SolverOk以外の解説もあり参考になります。
    • good
    • 0
この回答へのお礼

参考URL有難う御座います。
Excelはとても奥が深く何か新しいことをやろうとするとなかなか思うように進めません。
教えてもらいながらボチボチやります。

お礼日時:2003/08/17 22:44

No.2ですが・・・ あっ、Solverフォルダの中です。



Officeをデフォルトでインストールしたとは、下記に(Offce2000)

C:\Program Files\Microsoft Office\Office\Library\Solver\Solver.xla

です。
    • good
    • 0
この回答へのお礼

参照可能なライブラリファイルに Solver.xla をセットすると Solver.xls と表示されました。
お陰様でうまく行きました。
有難う御座いました。

お礼日時:2003/08/17 22:31

VBEの[ツール]→[参照設定]で


solver.xls にチェックを入れてください。

この回答への補足

早速の回答ありがとうございます。

>VBEの[ツール]→[参照設定]で
>solver.xls にチェックを入れてください。

[参照設定]の中に solver.xls を見つけることが出来ません。
Microsoft Excel 9.0 Object Libraryにはチェックがついていますが、これとは違いますよね?
もう少し詳しく説明をお願いします。

補足日時:2003/08/17 18:59
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!