VBA高速化 | カメレオンのVBA

カメレオンのVBA

VBAの私的メモ書き

・シートやウィンドウが切り替わるのを見せない

 Application.ScreenUpdating = False 

 (実行後は特にTrueに変更せずとも、自動的にTrueになるが、万一の事を考えて

 
Application.ScreenUpdating = False 

 と明記した方が良い)




・別のイベントプロシージャを停止する

 Application.EnableEvents = False

 ↓実行後は次のコードを加える

 Application.EnableEvents = True




・手動計算に切り替えて随時シート内の関数を実行しない

 Application.Calculation = xlCalculationManual

 ↓実行後は次のコードを加える

 Application
.Calculation = xlCalculationAutomatic




例1)処理の実行時


with Application
 .ScreenUpdating = False 
 .EnableEvents = False
 .Calculation = xlCalculationManual
End With




例2)処理の終了時

with Application
 .ScreenUpdating = True
 .EnableEvents = True
 .Calculation = xlCalculationAutomatic
End With