|
おはようございます。
とりあえず、以下の処理をまだ入れていないなら対応してみてください。
処理開始直前に
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
処理終了直前に
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
EXCELはセルの値や数式に変更がかかると自動再計算を行い、全数式を計算し直します。
使用している数式の数が多いと、再計算に時間がかかり、処理速度が落ちます。
開始前の1行目はそれを止める処理です。終了直前の1行目で自動再計算に戻します。
同様に画面描画も処理を遅くする原因なので、これも止めます。ただし、止めっぱなしにすると
プログラムが終了してもエクセルが固まるので注意が必要です。
ただ、お話の限りでは、遅くなり方が半端ではないので、これ以外にも要因があるかもしれません。
手前味噌で恐縮ですがご参考に
://sites.google.com/site/compositiosystemae/home/vbaworld/primitive/exp1/stopredrow
|
|