Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bildschirmupdate während Makroausführung ausschalt

Forumthread: Bildschirmupdate während Makroausführung ausschalt

Bildschirmupdate während Makroausführung ausschalt
25.11.2004 10:55:46
Michael
Hallo,
ich weiß, dass es einen Befehl gibt, der das Aktualisieren
des Bildschirms während der Ausführung eines Makros abschaltet,
um die Ausführung schneller zu machen.
Leider kann ich mich nicht mehr erinnern, welcher BEfehl das war.
Kann jemand helfen?
Gruß
Michael
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Application.ScreeUpdating = False
25.11.2004 10:59:21
Josef
Hallo Michael!
Mit
Application.ScreeUpdating = False
ausschalten und mit
Application.ScreeUpdating = True
wieder Einschalten.
Wenn du aber auf Select und Activate verzichtest, dann wird dein
Code noch schneller!
Gruß Sepp
Application.ScreenUpdating = False (ot)
Dr.
.
AW: Bildschirmupdate während Makroausführung aussc
=Peter=
Hallo Michael,
meinst du das:
Application.ScreenUpdating = False
Application.ScreenUpdating = True
Gruss
Peter
Anzeige
AW: Bildschirmupdate während Makroausführung ausschalt
25.11.2004 11:18:53
Michael
Vielen Dank an Euch!
Das war's was ich suchte.
Grüße
Michael
Anzeige
Anzeige

Infobox / Tutorial

Bildschirmupdate während Makroausführung ausschalten


Schritt-für-Schritt-Anleitung

Um die Bildschirmaktualisierung während der Ausführung eines Makros in Excel VBA auszuschalten, kannst Du die folgenden Schritte befolgen:

  1. Öffne den Visual Basic for Applications (VBA) Editor in Excel. Du kannst dies tun, indem Du ALT + F11 drückst.

  2. Gehe zu dem Modul, in dem Du Dein Makro schreiben möchtest.

  3. Füge den folgenden Code in Dein Makro ein, um die Bildschirmaktualisierung auszuschalten:

    Application.ScreenUpdating = False
  4. Füge am Ende Deines Makros den Code hinzu, um die Bildschirmaktualisierung wieder einzuschalten:

    Application.ScreenUpdating = True
  5. Speichere Dein Makro und teste es. Du wirst einen Geschwindigkeitsunterschied bemerken, da Excel nicht mehr bei jeder Änderung den Bildschirm aktualisieren muss.


Häufige Fehler und Lösungen

  • Fehler: Das Makro läuft langsamer als erwartet.
    Lösung: Überprüfe, ob Du die Bildschirmaktualisierung tatsächlich mit Application.ScreenUpdating = False ausgeschaltet hast. Oft wird dies vergessen.

  • Fehler: Nach dem Ausführen des Makros bleibt der Bildschirm "einfrieren".
    Lösung: Stelle sicher, dass Du Application.ScreenUpdating = True am Ende Deines Makros verwendest, um die Aktualisierung wieder zu aktivieren.


Alternative Methoden

Es gibt auch andere Ansätze, die Du verwenden kannst, um die Leistung Deiner Makros zu verbessern:

  • Vermeidung von Select und Activate: Wenn Du diese Befehle vermeidest, wird Dein Code schneller. Stattdessen kannst Du direkt auf die Objekte zugreifen.

    Beispiel:

    Worksheets("Sheet1").Range("A1").Value = "Test"
  • Deaktivieren von Berechnungen: Du kannst auch die automatischen Berechnungen ausschalten, während das Makro läuft:

    Application.Calculation = xlCalculationManual

    Und am Ende wieder aktivieren:

    Application.Calculation = xlCalculationAutomatic

Praktische Beispiele

Hier ist ein einfaches Beispiel für ein Makro, das die Bildschirmaktualisierung und Berechnung ausschaltet:

Sub BeispielMakro()
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual

    ' Dein Code hier
    Worksheets("Sheet1").Range("A1").Value = "Hallo Welt"

    Application.Calculation = xlCalculationAutomatic
    Application.ScreenUpdating = True
End Sub

Dieses Beispiel zeigt, wie Du sowohl die Bildschirmaktualisierung als auch die Berechnung optimieren kannst, um die Ausführungsgeschwindigkeit zu erhöhen.


Tipps für Profis

  • Debugging: Wenn Du während der Entwicklung Deines Makros Probleme hast, kannst Du temporär die Bildschirmaktualisierung nicht ausschalten, um zu sehen, was genau passiert.
  • Zusammenfassen von Änderungen: Fasse mehrere Änderungen in einem Schritt zusammen, um die Anzahl der Bildschirmaktualisierungen zu minimieren.
  • Verwendung von Variablen: Nutze Variablen, um Werte zu speichern und unnötige Zugriffe auf das Arbeitsblatt zu vermeiden.

FAQ: Häufige Fragen

1. Wie funktioniert der Befehl Application.ScreenUpdating = False?
Dieser Befehl deaktiviert die Bildschirmaktualisierung, sodass Excel nicht bei jeder Änderung den Bildschirm neu zeichnet, was die Ausführungsgeschwindigkeit Deines Makros erhöht.

2. Muss ich die Bildschirmaktualisierung am Ende des Makros wieder aktivieren?
Ja, es ist wichtig, Application.ScreenUpdating = True am Ende Deines Makros zu verwenden, um sicherzustellen, dass Excel wieder normal funktioniert.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige