• ベストアンサー

VBAが重くなってしまった

ExcelでVBAを組んでいましたが、ある日突然このVBAを実行すると途中でCPUが100%になったままExcelが復帰しづらくなりました。 強制的にESCキーを押してVBAを終了させてもExcel自体が動作が重くなってExcelブックとVBEのウインドウを行ったり来たりするにもCPUがしばらく100%になって動作が非常に重くなります。 結局タスクマネージャからExcelを強制終了するのですが、原因がわかりません。 VBAの内容に誤りがあるのでは?と思って何日も調べましたがVBAでエラーがでることはなく、VBAの実行が非常に重く、今まで3秒で実行が終わっていたものが数分かかってしまいます。 Windows2000SP4+Excel2000SP3です。おわかりの方いるでしょうか?たいへん困っております・・・。

質問者が選んだベストアンサー

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.2

VBAのコードが不明ですので、問題の切り分けも出来ませんが、、、、 特定のブックだけが重いのか、新規ブックで簡単なコピー処理をさせても重いのか試してみるなど、問題を少しずつ切り分けていっては? 経験上、コピー処理を繰り返す場合で重くなるのはオートシェイプ等のオブジェクトが一緒にコピーされているケースです。 (透明なオブジェクトが大量に出来ているなど)

suffre
質問者

お礼

お返事ありがとうございます。 新規ブックでの簡単なコピーすら重い状況でした。 そこでOfficeを再インストールしてみたところ不具合は解消されました。 原因はよくわかりませんが、改善されたのでほっとしました。 ご回答くださった方々ありがとうございます!

その他の回答 (1)

  • Ysan
  • ベストアンサー率32% (44/136)
回答No.1

無限ループに近い状態のプログラムの組み方をしていませんか? (ある特定の状況で無限ループに近い状態なるとか) その場合はエラーも出ません。 プログラムを見直してみては?

suffre
質問者

お礼

かもしれないと思ったのですが、ループはスキップさせて実行させてもダメでした。 あと、先ほど以前組んだ完成されたVBAを実行しても同じく重くなってExcelが帰ってこなくなりました。 どうやらシート間でセルをコピーするところで止まっている(CPU100%)っぽいです。

関連するQ&A