Application.ScreenUpdating プロパティ (Excel)

画面の更新が有効の場合は True。 読み取り/書き込みが可能な Boolean です。

構文

expression.ScreenUpdating

expressionApplication オブジェクトを 表す変数。

解説

マクロの速度を向上させるため、画面を更新しないようにします。 この場合、マクロの処理過程は見ることができませんが、実行速度が速くなります。

マクロが終了した後は、ScreenUpdating プロパティの値を True に戻してください。

次の使用例は、画面表示の更新をオフにすることで、どのくらいコードの実行を速くできるのかを示します。 シート 1 の列を 1 列おきに非表示にする操作を 2 回行い、それぞれの操作にかかる時間を調べます。 1 回目の操作では、画面表示の更新はオンになりますが、2 回目のときにはオフになります。 実行すると、それぞれの操作の所要時間がメッセージ ボックスに表示されます。

Dim elapsedTime(2) 
Application.ScreenUpdating = True 
For i = 1 To 2 
 If i = 2 Then Application.ScreenUpdating = False 
 startTime = Time 
 Worksheets("Sheet1").Activate 
 For Each c In ActiveSheet.Columns 
 If c.Column Mod 2 = 0 Then 
 c.Hidden = True 
 End If 
 Next c 
 stopTime = Time 
 elapsedTime(i) = (stopTime - startTime) * 24 * 60 * 60 
Next i 
Application.ScreenUpdating = True 
MsgBox "Elapsed time, screen updating on: " & elapsedTime(1) & _ 
 " sec." & Chr(13) & _ 
 "Elapsed time, screen updating off: " & elapsedTime(2) & _ 
 " sec."

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。