Excel VBA-Unterbrechung für Schleife

VBA-Unterbrechung wird verwendet, wenn die Endlosschleife mit bestimmten festgelegten Kriterien beendet oder unterbrochen werden soll. Die for-Schleife liegt innerhalb des Gültigkeitsbereichs und definiert die Anweisungen, die für eine feste Zeitdauer wiederholt ausgeführt werden. Manchmal, wenn wir in VBA eine Schleifenbedingung verwenden, läuft der Code ohne Ende oder Unterbrechung weiter. Um diese Art von Situationen zu vermeiden, wird empfohlen, einige Unterbrechungen oder Beendigungsfunktionen zu verwenden, mit denen wir die Schleife mit der messbaren Ausgabe des Makros verlassen können.

Wie verwende ich Excel VBA Break For Loop?

Anhand einiger Beispiele in Excel lernen wir, wie man eine VBA-Unterbrechung für eine Schleife verwendet.

Sie können diese Excel-Vorlage für VBA-Unterbrechungen hier herunterladen - Excel-Vorlage für VBA-Unterbrechungen

Beispiel # 1 - VBA Break For Loop

Wir werden ein Beispiel sehen, in dem bei Verwendung der For- Schleife die Anordnung der Kriterien nicht unterbrochen wird. Um dies zu beheben, verwenden wir die If-End- Schleife. Dazu benötigen wir ein Modul, in das wir diesen Code schreiben.

Führen Sie die folgenden Schritte aus, um Break for Loop in Excel VBA zu verwenden.

Schritt 1: Öffnen Sie ein neues Modul, gehen Sie zum VBA-Fenster und wählen Sie dort Modul aus dem Menü Einfügen.

Schritt 2: Dies bringt uns zu einem neuen Modul in VBA. Schreiben Sie nun in dieses Modul die Unterkategorie im Namen von VBA Break For Loop oder in einem anderen Namen, der seine Bedeutung definiert.

Code:

 Sub VBABreak1 () End Sub 

Schritt 3: Definieren Sie nun ein DIM als ein beliebiges Alphabet oder Wort. Dies gibt ihm eine Identität. Hier verwenden wir das unten stehende Alphabet „A“.

Code:

 Sub VBABreak1 () Dim A End Sub 

Schritt 4: Weisen Sie es nun als Ganzzahl zu, die nur für die unten gezeigten Zahlen verwendet wird.

Code:

 Sub VBABreak1 () Dim A As Integer End Sub 

Schritt 5: Weisen Sie nun Integer A einen numerischen Wert zu. Angenommen, es ist 10, wie unten gezeigt.

Code:

 Sub VBABreak1 () Dim A As Integer A = 10 End Sub 

Schritt 6: Starten Sie nun eine For-Schleife und berücksichtigen Sie einen beliebigen Startwert von A. Es ist besser, diesen Wert als Null zu verwenden. Dies wird einfach für die Berechnung.

Code:

 Sub VBABreak1 () Dim A As Integer A = 10 For A = 0 To A Schritt 2 End Sub 

Schritt 7: Um den in A gespeicherten Wert zu drucken, verwenden wir ein Meldungsfeld, das seinen Wert abruft. Sie können auch eine beliebige Form eines Satzes verwenden, um das Meldungsfeld aussagekräftiger zu gestalten, was optional ist. Wir haben es wie unten gezeigt verwendet.

Code:

 Sub VBABreak1 () A als Ganzzahl dimmen A = 10 für A = 0 bis A Schritt 2 MsgBox ("Der Wert ist A ist:" & A) Next End Sub 

Schritt 8: Kompilieren Sie nun den Code Schritt für Schritt mit der Funktionstaste F8 und führen Sie den Code anschließend aus, indem Sie auf die Schaltfläche Abspielen klicken (siehe Abbildung unten). Wir werden sehen, dass die Ausgabe in jedem Schritt von 0 bis 10 in der Schrittlücke von 2 ist, wie unten gezeigt.

Schritt 9: Schließen Sie jetzt For Loop und verwenden Sie am Ende auch Next . Das "Weiter" wird verwendet, wenn wir Zahlen im Code verwenden.

Code:

 Sub VBABreak1 () A als Ganzzahl dimmen A = 10 für A = 0 bis A Schritt 2 MsgBox ("Der Wert ist A ist:" & A) Exit für Next End Sub 

Schritt 10: Dies zeigt, dass die Schleife nicht vollständig ist und wir auch die Beendigungskriterien erfüllen müssen, um die For-Schleife zu verlassen. Und dafür verwenden wir die If-End Loop-Bedingung. Erwägen Sie also, If-Schleife für dieselbe Ganzzahl A zu schreiben. Wählen Sie hier das Limit, bis Sie die Schleife ausführen möchten. Wir haben es als 4 betrachtet.

Code:

 Sub VBABreak1 () A als Ganzzahl dimmen A = 10 für A = 0 bis A Schritt 2 MsgBox ("Der Wert ist A ist:" & A) Wenn A = 4, dann Beenden Sie für Next End Sub 

Schritt 11: Fügen wir nun ein weiteres Kriterium hinzu, in dem wir angeben, wie oft es mit einer beliebigen Zahl multipliziert werden würde. Angenommen, es ist 10. Sie können anstelle von 10 eine beliebige andere Zahl wählen. Die Verwendung von 10 erleichtert jedoch das Verständnis der Multiplikationsschleife.

Code:

 Sub VBABreak1 () A dimmen als Ganzzahl A = 10 für A = 0 bis A Schritt 2 MsgBox ("Der Wert ist A ist:" & A) Wenn A = 4, dann A = A * 10 Exit For Next End Sub 

Schritt 12: Verwenden Sie jetzt wieder das Meldungsfeld name, wie wir es für die For-Schleife verwendet haben, und schließen Sie zuletzt die If-Schleife mit der Anweisung End if, wie unten gezeigt.

Code:

 Sub VBABreak1 () A als Ganzzahl dimmen A = 10 für A = 0 bis A Schritt 2 MsgBox ("Der Wert ist A ist:" & A) Wenn A = 4, dann ist A = A * 10 MsgBox ("Der Wert ist A ist : "& A) Exit For End If Next End Sub 

Schritt 13: Kompilieren Sie den Code erneut und führen Sie ihn aus. For Loop zeigt eine Nachricht mit dem Wert 0 an, gefolgt von 2, 4 und dem Ende von 40. Dies bedeutet, dass For Loop bei der dritten Iteration unterbrochen wurde und den letzten Wert als 40 annahm.

Beispiel # 2 - VBA Break For Loop

In diesem Beispiel wenden wir die For-Schleife an und sehen, wie die Schleife unterbrochen wird, sobald sie die Kriterien erfüllt.

Schritt 1: Öffnen Sie ein neues Modul über die Menüoption Einfügen und weisen Sie ihm nacheinander einen beliebigen Namen oder eine bessere Unterkategorie zu (siehe Abbildung unten).

Code:

 Sub VBABreak2 () End Sub 

Schritt 2: Definieren Sie nun ein DIM A als Integer. Mit Integer for Test können wir den Code schneller implementieren und einfach debuggen.

Code:

 Sub VBABreak2 () Dim A As Integer End Sub 

Schritt 3: Starten Sie nun eine For-Schleife für eine definierte Ganzzahl und geben Sie ihr einen Bereich von einer beliebigen Zeilenzahl ab 1. Wir haben bis 20 gewählt.

Code:

 Sub VBABreak2 () Dim A As Integer For A = 1 To 20 End Sub 

Schritt 4: Geben Sie nun einen Bereich oder eine Position an, von der aus die Zahlen der Reihe nach gedruckt werden. Wir haben ThisWorkBook verwendet, um die aktuell geöffnete Datei und Arbeitsblätter (1) auszuwählen, um das erste Blatt einer geöffneten Arbeitsmappe auszuwählen, wie unten gezeigt. Um die For-Schleife zu schließen, schreiben Sie Next am Ende wie unten gezeigt.

Code:

 Sub VBABreak2 () Dim A As Integer For A = 1 To 20 ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Schritt 5: Führen Sie den obigen Code manuell oder mit der Tastenkombination F5 aus. Wir können sehen, dass der Code eine Anzahl von 1 bis 20 angegeben hat.

Schritt 6: Um nun die Schleife zwischen 0 und 20 zu unterbrechen, verwenden wir die If-End if-Schleifenbedingung, in der wir die Kriterien angeben, unter die die Schleife fallen soll (siehe Abbildung unten).

Code:

 Sub VBABreak2 () A als Ganzzahl dimmen für A = 1 bis 20 If End If ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Schritt 7: Schreiben Sie nun die Kriterien. Wenn A größer als 9 (oder eine beliebige Zahl, aber kleiner als 20) ist, beenden Sie For wie unten gezeigt. Wir nehmen an, dass For Loop unterbrochen wird, wenn die Schleife 9 erreicht.

Code:

 Sub VBABreak2 () A als Ganzzahl dimmen für A = 1 bis 20, wenn A> 9, dann beenden für End If ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Schritt 8: Kompilieren Sie nun den Code, um den Fehler zu finden. Wenn kein Fehler gefunden wurde, führen Sie ihn aus. Wir werden sehen, dass für die ganze Zahl A Werte von 1 bis 20 gefüllt wurden, bis der Code an Position 9 beendet oder unterbrochen wurde.

Vorteile von VBA Break For Loop

  • Exit oder Break können nicht nur für For-Schleifen, sondern auch für viele andere Schleifen wie Do-While verwendet werden.
  • Dies wird am häufigsten unter allen in VBA verfügbaren Schleifenbedingungen verwendet.
  • For Loop ist ganz einfach und kann auch ohne Exit-Kriterien arbeiten.

Dinge, an die man sich erinnern sollte

  • For-Schleife kann funktionieren, ohne die Exit-Kriterien anzugeben. Es kann gut funktionieren, bis das Kriterium ohne Exit die Schleife zum Ende bricht.
  • Es ist wichtig, eine Schleife zu unterbrechen, die die Exit-Kriterien nicht erfüllt, indem Sie Exit in der Schleife verwenden.
  • Speichern Sie die Datei nach dem Schreiben des Codes als Macro Enable Excel, damit der geschriebene Code erhalten bleibt.

Empfohlene Artikel

Dies war ein Leitfaden für VBA Break For Loop. Hier besprechen wir die Verwendung von Excel VBA Break For Loop zusammen mit praktischen Beispielen und einer herunterladbaren Excel-Vorlage. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. VBA InStr erklärt mit Beispielen
  2. VBA Integer-Datentyp
  3. So wählen Sie eine Zelle mit VBA-Code aus
  4. Transponieren Sie einen Bereich in VBA

Kategorie: