教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

ExcelVBAで画面のちらつきを止める方法

構文

構文は以下の通りです。

Application.ScreenUpdating = False ' 画面更新をオフにする
Application.ScreenUpdating = True  ' 画面更新をオンにする

解説

Application.ScreenUpdating は、画面更新をオンまたはオフにするために使用します。
Falseに設定すると、Excelの画面更新が停止し、処理速度が向上します。データを大量に処理する際や複雑なマクロを実行する際に有効です。Trueに設定すると、画面更新が再び有効になります。

プログラミング例

具体的なプログラミング例を紹介します。

Sub サンプルプログラム()
    Dim 行 As Double
    ' 画面更新をオフにする
    Application.ScreenUpdating = False
    ' 1000行にわたるデータを更新
    For 行 = 1 To 100000
        Cells(行, 1).Value = "データ" & 行
    Next 行
    ' 画面更新をオンに戻す
    Application.ScreenUpdating = True
End Sub

上記のプログラムでは、画面更新をオフにしているため、データ入力中の画面のちらつきがなく、スムーズに処理が行われます。

まとめ

Application.ScreenUpdating を利用することで、マクロ実行時の画面のちらつきを防ぎ、処理速度を向上させることができます。特に大量のデータを扱う場合や複雑な処理を行う際には是非活用してください。