- ベストアンサー
VBAが重くなってしまった
ExcelでVBAを組んでいましたが、ある日突然このVBAを実行すると途中でCPUが100%になったままExcelが復帰しづらくなりました。 強制的にESCキーを押してVBAを終了させてもExcel自体が動作が重くなってExcelブックとVBEのウインドウを行ったり来たりするにもCPUがしばらく100%になって動作が非常に重くなります。 結局タスクマネージャからExcelを強制終了するのですが、原因がわかりません。 VBAの内容に誤りがあるのでは?と思って何日も調べましたがVBAでエラーがでることはなく、VBAの実行が非常に重く、今まで3秒で実行が終わっていたものが数分かかってしまいます。 Windows2000SP4+Excel2000SP3です。おわかりの方いるでしょうか?たいへん困っております・・・。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
VBAのコードが不明ですので、問題の切り分けも出来ませんが、、、、 特定のブックだけが重いのか、新規ブックで簡単なコピー処理をさせても重いのか試してみるなど、問題を少しずつ切り分けていっては? 経験上、コピー処理を繰り返す場合で重くなるのはオートシェイプ等のオブジェクトが一緒にコピーされているケースです。 (透明なオブジェクトが大量に出来ているなど)
その他の回答 (1)
- Ysan
- ベストアンサー率32% (44/136)
無限ループに近い状態のプログラムの組み方をしていませんか? (ある特定の状況で無限ループに近い状態なるとか) その場合はエラーも出ません。 プログラムを見直してみては?
お礼
かもしれないと思ったのですが、ループはスキップさせて実行させてもダメでした。 あと、先ほど以前組んだ完成されたVBAを実行しても同じく重くなってExcelが帰ってこなくなりました。 どうやらシート間でセルをコピーするところで止まっている(CPU100%)っぽいです。
お礼
お返事ありがとうございます。 新規ブックでの簡単なコピーすら重い状況でした。 そこでOfficeを再インストールしてみたところ不具合は解消されました。 原因はよくわかりませんが、改善されたのでほっとしました。 ご回答くださった方々ありがとうございます!