Rückkehr in VBA-Code-Beispiele

VBA – Bildschirmaktualisierung ausschalten

So cool es auch aussieht, wenn Ihr VBA-Makro den Bildschirm manipuliert, Sie können Ihr Makro schneller laufen lassen, wenn Sie die Bildschirmaktualisierung ausschalten (deaktivieren).

Bildschirmaktualisierung ausschalten

1. Um die Bildschirmaktualisierung zu deaktivieren, fügen Sie am Anfang Ihres Codes diese Zeile ein:

Application.ScreenUpdating = False

Bildschirmaktualisierung einschalten

2. Um die Bildschirmaktualisierung wieder zu aktivieren, fügen Sie am Ende Ihres Codes diese Zeile ein:

Application.ScreenUpdating = True

VBA – Bildschirmaktualisierung – Beispiel

Ihre Prozedur wird dann folgendermaßen aussehen:

Sub BildschirmAktualisierung_Beispiel()
    Application.ScreenUpdating = False

    'Etwas tun
    Range("a1").Copy Range("b1")
    Range("a2").Copy Range("b2")
    Range("a3").Copy Range("b3")


    Application.ScreenUpdating = True
End Sub

vba bilschirmaktualisierung ein aus

ScreenUpdating – Aktualisierung

Durch die Deaktivierung der Bildschirmaktualisierung wird Ihr VBA-Code VIEL schneller ausgeführt, aber es lässt Ihre Arbeit auch professioneller erscheinen. Endbenutzer möchten in der Regel nicht die Aktionen hinter den Kulissen Ihrer Prozeduren sehen (insbesondere wenn die Prozedur langsam läuft). Auch möchten Sie vielleicht nicht, dass die Endbenutzer die Funktionen hinter den Kulissen sehen (z. B. ausgeblendete Arbeitsblätter). Ich empfehle, die Bildschirmaktualisierung praktisch in allen Ihren Prozeduren zu deaktivieren (und wieder zu aktivieren).

Es gibt jedoch Fälle, in denen Sie den Bildschirm aktualisieren möchten. Um den Bildschirm zu aktualisieren, müssen Sie die Bildschirmaktualisierung vorübergehend wieder einschalten (es gibt keinen Befehl  namens „Bildschirm aktualisieren“):

   Application.ScreenUpdating = True
   'Etwas tun
   Application.ScreenUpdating = False

VBA-Einstellungen – Code beschleunigen

Es gibt noch einige andere Einstellungen, mit denen Sie die Geschwindigkeit Ihres Codes verbessern können.

Die Deaktivierung der automatischen Berechnungen kann einen gewaltigen Unterschied in der Geschwindigkeit ausmachen:

Application.Calculation = xlManual

Auch die Deaktivierung der Statusleiste kann einen kleinen Unterschied ausmachen:

Application.DisplayStatusBar = False

Wenn Ihre Arbeitsmappe Ereignisse enthält, sollten Sie diese in der Regel zu Beginn Ihres Verfahrens deaktivieren:

Application.EnableEvents = False

Schließlich kann Ihr VBA-Code verlangsamt werden, wenn Excel versucht, die Seitenumbrüche neu zu berechnen (Hinweis: Nicht alle Prozeduren sind davon betroffen). Um die Anzeige von Seitenumbrüchen zu deaktivieren, verwenden Sie diese Codezeile:

ActiveSheet.DisplayPageBreaks = False

VBA-Programmierung leicht gemacht

Suchen Sie nicht länger online nach VBA-Code. Erfahren Sie mehr über AutoMacro – einen VBA Code Builder, der es Anfängern ermöglicht, Prozeduren von Grund auf mit minimalen Programmierkenntnissen und mit vielen zeitsparenden Funktionen für alle Benutzer zu programmieren!

bildschirm aktualisieurg vba

VBA Coding Made Easy

Stop searching for VBA code online. Learn more about AutoMacro - A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users! vba save as


Learn More!