タイトル : Re^3: EXCELのプロセスの解放について 投稿日 : 2011/07/27(Wed) 13:26 投稿者 : 魔界の仮面弁士
> プロセスを指定して削除するプログラムでも作った方がいいのでしょうか? 印刷処理を VBA 化して、VB を介さずに、そのマクロ入りブックを開いてみてください。 VBA から PrintOut を実行した場合に、Excel 終了後にプロセスは残りますか? 残るのであれば、環境側に問題があるのかも知れません。 残らないのであれば、印刷部分だけを VBA に外出しにしておき、 VB からそのプロシージャを Excel4Macro あるいは Run メソッドで 呼び出すことで、問題点を軽減できるかもしれません。 > →ここまで削れば正常に解放されるのですが・・・。 > Set xlApp = CreateObject("Excel.Application") > xlApp.Visible = True > xlApp.Quit > Set xlApp = Nothing 上記の場合、元のコードと比較してみると、 (1) Application の Workbooks プロパティ取得 (2) Workbooks の Open / Add メソッド実行 (3) Workbook の Worksheets / Sheets プロパティ取得 (4) Sheets の 既定プロパティ取得 (5) Worksheet の PrintOut メソッド実行 が削られている事になりますが、(5) だけではなく、 それどころか (1) までも削らねばならなかったのでしょうか? だとしたら、そもそもの実行環境に問題を抱えている可能性が高そうです。 |