Excel VBA ScreenUpdating

Wenn wir ein VBA-Makro mit einer großen Menge an Code ausführen, wird der Code abgeschlossen, aber im Hintergrund werden Daten in Form von Ausführen oder Warten auf den Zeiger verarbeitet. Und sobald es fertig ist, können wir nur die Ausgabe sehen. Der normale Weg ist nicht der richtige Weg, um zu sehen, wie die Werte durch Ausführen von Code aktualisiert werden. Angenommen, wir haben den Code geschrieben, um einige Zahlen in 100 Zellen zu generieren. Dieser Code könnte nun einfach die Ausgabe generieren, ohne zu zeigen, wie die Zahlen gedruckt werden. Um dies zu beheben, haben wir VBA ScreenUpdating . ScreenUpdating in VBA hilft uns zu sehen, wie der Code die Ausgabe generiert. Dies können Zahlen, Texte, Buchstaben oder Kombinationen sein. Sobald wir die Codeschleife ausgeführt haben, konnten wir durch VBA-ScreenUpdating sehen, dass die Zahlen generiert wurden.

Wie Verwenden von ScreenUpdating-Anwendung in Excel VBA?

Wir werden lernen, wie die ScreenUpdating-Anwendung in Excel mithilfe des VBA-Codes verwendet wird.

Sie können diese VBA ScreenUpdating Excel-Vorlage hier herunterladen - VBA ScreenUpdating Excel-Vorlage

VBA ScreenUpdating kann bemerkt werden, während wir den Code oder das Makro ausführen. Während der Code ausgeführt wird, können wir sehen, wie unser Bildschirm durch die durch geschriebenen Code in VBA generierten Werte aktualisiert wird. Anstatt das ältere Warteschild zu sehen, können wir mithilfe von VBA ScreenUpdating sehen, wie der Bildschirm die von VBA ScreenUpdating ausgegebenen Werte aktualisiert. Jetzt können wir auch sehen, dass der Name des Artikels selbst seine Funktion definiert, VBA ScreenUpdating .

VBA ScreenUpdating - Beispiel # 1

In diesem Beispiel sehen wir einen einfachen Code zum Aktualisieren des Bildschirms. Dazu benötigen wir einige Zellen mit Zahlen, wie unten gezeigt. Führen Sie dazu die folgenden Schritte aus:

Schritt 1: Öffnen Sie ein Modul über die Registerkarte Einfügen (siehe unten).

Schritt 2: Schreiben Sie nun die Unterprozedur im Namen von VBA ScreenUpdating, wie unten gezeigt.

Code:

 Sub Screen_Update1 () End Sub 

Schritt 3: Wir werden nun die Nummern aus Zelle A1: A3 in andere Zellen kopieren. Angenommen, die Zelle ist C1: C3 mit Hilfe des folgenden Codes.

Code:

 Sub Screen_Update1 () Bereich ("A1"). Kopierbereich ("C1") Bereich ("A2"). Kopierbereich ("C2") Bereich ("A3"). Kopierbereich ("C3") End Sub 

Schritt 4: Wenn wir nun diesen Code ausführen, könnten wir nur die Ausgabe erhalten, die die Werte von Spalte A nach C kopiert. Jetzt werden wir die ScreenUpdating-Anwendung verwenden, wie unten gezeigt.

Code:

 Sub Screen_Update1 () Application.ScreenUpdating Range ("A1"). Kopierbereich ("C1") Range ("A2"). Kopierbereich ("C2") Range ("A3"). Kopierbereich ("C3") End Sub 

Schritt 5: Wir setzen ein Gleichheitszeichen, um die Booleschen Werte auszuwählen, die WAHR oder FALSCH sind. Wir wählen FALSE, um die Bildschirmaktualisierung zu stoppen.

Code:

 Sub Screen_Update1 () Application.ScreenUpdating = Falscher Bereich ("A1"). Kopierbereich ("C1") Bereich ("A2"). Kopierbereich ("C2") Bereich ("A3"). Kopierbereich ("C3") ) End Sub 

Schritt 6: Führen Sie den Code durch Drücken der Taste F5 oder durch Klicken auf die Wiedergabetaste unter dem Menüband aus. Wir werden sehen, dass die Werte von Spalte A nach C kopiert werden.

Dies könnte klarer gesehen werden, wenn wir eine riesige Menge von Zahlen haben.

VBA ScreenUpdating - Beispiel # 2

Sehen wir uns ein weiteres Beispiel für ScreenUpdating an. Betrachten wir diesmal die Zahl von 1 bis 20 von Zelle A1 bis A20, wie unten gezeigt.

Führen Sie die folgenden Schritte aus, um die Anwendung zur Bildschirmaktualisierung zu verwenden:

Schritt 1: Schreiben Sie die Unterprozedur der VBA-Bildschirmaktualisierung wie unten gezeigt.

Code:

 Sub Screen_Update2 () End Sub 

Schritt 2: Schreiben Sie nun den Code, um die Bereichszelle von A1 bis A20 auszuwählen, und kopieren Sie sie bei B1 bis F20, wie unten gezeigt. In ähnlicher Weise wie in Beispiel 1.

Code:

 Sub Screen_Update2 () Bereich ("A1: A20"). Kopierbereich ("B1: F20") End Sub 

Schritt 3: Um die Anwendung screenupdating anzuwenden, verwenden wir wieder eine ähnliche Codezeile, die wir in Beispiel-1 gesehen haben.

Code:

 Sub Screen_Update2 () Application.ScreenUpdating = Falscher Bereich ("A1: A20"). Kopierbereich ("B1: F20") End Sub 

Mit der oben genannten Anwendung ScreenUpdating as FALSE können wir sehen, wie der VBA-Code den Bildschirm aktualisiert. Je mehr Nummern wir haben, desto größer ist die Wahrscheinlichkeit, dass wir Bildschirmaktualisierungen sehen.

Schritt 4: Führen Sie den Code aus, indem Sie die Taste F5 drücken oder auf die Wiedergabetaste klicken. Wir konnten sehen, dass der Wert aktualisiert wurde.

VBA ScreenUpdating - Beispiel # 3

Es gibt eine andere Möglichkeit, den Bildschirm zu aktualisieren. Dies könnte mit Hilfe der For-Next-Schleife geschehen. In diesem Beispiel werden die Zahlen in einer Zeilen- und Spaltenkombination gedruckt. Führen Sie dazu die folgenden Schritte aus:

Schritt 1: Schreiben Sie die Unterprozedur von VBA ScreenUpdating.

Code:

 Sub Screen_Updating3 () End Sub 

Schritt 2: Deklarieren Sie nun die 2 Variablen für Row und Columns getrennt als Datentyp Long.

Code:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long End Sub 

Schritt 3: Deklarieren Sie nun eine weitere Variable, die wir als Referenz zum Starten der Zahlen verwenden.

Code:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long End Sub 

Schritt 4: Geben Sie nun die Referenznummer an, ab welcher Position die Zählung beginnen soll. Hier geben wir es als 0.

Code:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 End Sub 

Schritt 5: Öffnen Sie nun eine For-Schleife und geben Sie die Anzahl der Spalten und Zeilen an, die aktualisiert werden sollen. Sagen wir von 1 bis 50.

Code:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 Für RowCount = 1 To 50 End Sub 

Schritt 6: Um die Schleife fortzusetzen, geben Sie MyNumber-Variable +1.

Code:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 Für RowCount = 1 bis 50 Für ColumnCount = 1 bis 50 MyNumber = MyNumber + 1 End Sub 

Schritt 7: Wählen Sie nun die Zeilen- und Spaltenvariablen in der Zellenfunktion aus. Wählen Sie dann die darin gespeicherten Werte aus und weisen Sie sie der Variablen MyNumber zu.

Code:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 Für RowCount = 1 bis 50 Für ColumnCount = 1 bis 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Select Cells (RowCount, ColumnCount) .Value = MyNumber End Sub 

Schritt 8: Schließen Sie nun die Schleife mit Weiter. Beziehen Sie Zeilen- und Spaltenvariablen ein, die wir in der For-Next-Schleife definiert und verwendet haben.

Code:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 Für RowCount = 1 bis 50 Für ColumnCount = 1 bis 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Select Cells (RowCount, ColumnCount) .Value = MyNumber Next ColumnCount Next RowCount End Sub 

Schritt 9: Jetzt haben wir die Screenupdating-Anwendung noch nicht eingefügt. Fügen Sie jetzt die Screenupdating-Anwendung als FALSE vor dem Beginn der Schleife und als TRUE am Ende der Schleife ein, wie unten gezeigt.

Code:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long Application.ScreenUpdating = False MyNumber = 0 Für RowCount = 1 bis 50 Für ColumnCount = 1 bis 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Select Cells (RowCount, ColumnCount) .Value = MyNumber Next ColumnCount Next RowCount Application.ScreenUpdating = True End Sub 

Kompilieren Sie nun den kompletten Code Schritt für Schritt mit der Funktionstaste F8 und führen Sie ihn dann aus, wenn kein Fehler gefunden wird. Wir werden sehen, wie jede Zelle der ausgewählten Zeilen und Spalten mit den darin gespeicherten Werten aktualisiert wird.

Vorteile von Excel VBA ScreenUpdating

  • Es ist sehr hilfreich zu sehen, wie der Bildschirm mit dem in der Schleife gespeicherten Wert aktualisiert wird.
  • Wir können Screenupdating verwenden, wenn wir zwischen Arbeitsblättern und Arbeitsmappen wechseln möchten.
  • Wir können einen beliebigen Zahlenbereich verwenden.

Dinge, an die man sich erinnern sollte

  • Wir verwenden die Insert- For-Next- Schleife als Frame oder erst können wir die Bedingung der For- Schleife erfüllen und sie dann mit Next schließen.
  • VBA ScreenUpdating ist sehr nützlich und sichtbar, wenn wir eine große Anzahl von Zahlen verwenden.
  • Wenn Sie fertig sind, speichern Sie die Excel-Datei, da Macro das Excel-Format aktiviert.
  • VBA ScreenUpdating kann auch zum Erstellen eines Makros verwendet werden, über das wir E-Mails senden können.

Empfohlene Artikel

Dies ist eine Anleitung zum VBA-ScreenUpdating. Hier wird die Verwendung der ScreenUpdating-Anwendung in Excel VBA zusammen mit praktischen Beispielen und einer herunterladbaren Excel-Vorlage erläutert. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. VBA Collection (Beispiele)
  2. VBA-IF-Anweisungen | Excel-Vorlagen
  3. Wie verwende ich die Excel VBA-Sortierfunktion?
  4. VBA While-Schleife (Beispiele mit Excel-Vorlage)
  5. VBA Environ

Kategorie: