In diesem Beispiel wird gezeigt, wie das Deaktivieren der Bildschirmaktualisierung die Ausführung des Makros beschleunigt. Jede zweite Spalte in Sheet1 wird ausgeblendet, während die für diese Operation benötigte Zeit gespeichert wird. Beim ersten Schleifendurchlauf werden die Spalten ausgeblendet, die Bildschirmaktualisierung ist aktiviert. Beim zweiten Durchlauf ist die Bildschirmaktualisierung deaktiviert. Wenn Sie das Makro ausführen, haben Sie die Möglichkeit, die beiden in einem Meldungsfeld angezeigten Zeiten zu vergleichen.
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."