|
現在複数のエクセルファイルを扱う処理をしています。
ファイルの処理数が増えると、メモリ不足またはワトソン博士表示にて
エクセルが強制終了されてしまいます。
(処理)
1つのエクセルファイル‘A.xls’を‘B.xls’の名でコピーしてそれを開き、
データ操作後、‘C.xls’の名で別名保存・‘B.xls’を削除する。
(‘B.xls’を上書保存(Save)後、Close(True)では‘B.xls’がCLOSEされず、
Close(False)ではSaveが無効になってしまいました)
これを複数ファイル分繰り返します。
Openするファイルは、複数シート処理する為、エクセル限定の仕様です。
試してみたのは‘C.xls’の保存直後にDoEventsの記述や10秒ほどWaitさせる処理や
メモリの使用可能量の取得を記述しました。
結果、若干処理数は増えましたが、とても不安定な状態です。
次に、‘C.xls’の保存直後にメモリの使用可能量をMsgbox出力させてみたところ、
100件以上の処理でもメモリ不足は発生しませんでした。
(メッセージボックスの'on'ボタンは表示後1〜3秒ほどでクリックしました)
ファイルの数だけMsgbox出力をさせておくことはできないので、
Msgbox出力に変わる処理を加えたいのですが、どのような処理が
該当するのでしょうか?
ご存知の方、ご教授頂けますようお願い致します。
|
|