EXCEL VBA の高速化・・・再計算を手動にする

EXCEL VBA の処理がやたら重くなり、何か楽に速くする方法はないかぐぐってみたらありました。

http://tobysoft.net/wiki/index.php?VBA%2F%B9%E2%C2%AE%B2%BD

再計算を一時的に手動にすると劇的に速くなります。

以下のコードを処理前に一行
Application.Calculation = xlManual
以下のコードを処理後に一行追加するだけです。
Application.Calculation = xlAutomatic

EXCEL2003で18分かかっていた処理が3分で終わりました。

なぜか、EXCEL2007では、43分かかっていたのですが、6分に縮まりました。

ただし、VBAの中でセルの計算値を参照して、それを元に処理するようなプログラムを組んでいるとおかしくなることがあります。

ご注意を・・・



コメントを残す