高速化するための実装方法
画面更新やセルの計算などの時間のかかる処理を抑止することで数倍~、高速化が図れる
'Escキーで処理停止、画面更新、イベント通知、セル自動計算を抑制 With Application .EnableCancelKey = xlDisabled .ScreenUpdating = False .EnableEvents = False .Calculation = xlCalculationManual End With 'マクロ本処理をここで行う。 'Escキーで処理停止、画面更新、イベント通知、セル自動計算を復活 With Application .Calculation = xlCalculationAutomatic .EnableEvents = True .ScreenUpdating = True .EnableCancelKey = xlInterrupt End With
各プロパティの詳細内容
Application.Calculation Escキーで処理停止、Escキーで処理が停止するのを抑制(xlDisabled)、復活(xlInterrupt)する
Application.ScreenUpdating 画面の更新を抑制(False)、復活(True)する。
Application.EnableEvents イベントの発生(セル内容の更新、シートのActive化等による引き金)を抑制(False)、復活(True)する
Application.Calculation セルの自動計算を抑制(xlCalculationManual)、復活(xlCalculationAutomatic)する