Möchten Sie sich wiederholende Aufgaben in Excel VBA automatisieren? Erfahren Sie, wie Sie die Do-While-Schleife verwenden, um eine Reihe von Aktionen wiederholt auszuführen, bis eine Bedingung erfüllt ist.
Schleifen sind ein wesentlicher Bestandteil jeder Programmiersprache, und Sie können viele sich wiederholende Aufgaben automatisieren, indem Sie je nach Sprache eine Vielzahl von Schleifen verwenden. VBA von Excel unterscheidet sich nicht von den anderen, da es eine Reihe von Schleifenoptionen bietet, die jeweils einem anderen Zweck dienen.
Sie können diese Schleifen verwenden, indem Sie Start- und Endpunkte, Bedingung(en) und Parameter definieren. Eine dieser prominenten Schleifen in VBA ist die do-while-Schleife, die Sie verwenden können, um mit der Datenautomatisierung zu arbeiten. So verwenden Sie die Do-While-Schleife von Excel VBA, eine immer unverzichtbare Schleifenmethode, die Ihre manuellen Aufgaben erheblich vereinfachen kann.
Was ist die Do-While-Schleife in Excel VBA?
Die do-while-Schleife ist ziemlich einfach; Sie können diese Schleife verwenden, um Ihre Gebote abzugeben, wenn Sie eine gewünschte Ausgabe auf der Grundlage einer bestimmten Bedingung generieren möchten. Die Schleife wird ausgeführt, bis die definierte(n) Bedingung(en) wahr ist/sind. Sobald das Programm auf einen False-Wert stößt, wird die Schleife beendet und die Ergebnisse in den angegebenen Zellen gedruckt.
Sie können die do-while-Schleife in verschiedenen Stufen und mit unterschiedlichen Kriterien verwenden; Sie können sogar mehrere Schleifen innerhalb der äußeren Hauptschleife verwenden, um deren Nutzung zu verbessern. Als Anfänger sollten Sie sich ausführlicher informieren Tutorials zur VBA-Programmierung Ihre Kenntnisse und Fähigkeiten in diesem Bereich zu erweitern.
Syntax der Do-While-Schleife in Excel VBA
Die do-while-Schleife hat eine vordefinierte Struktur, der Sie folgen müssen, um sicherzustellen, dass sie reibungslos und fehlerfrei funktioniert. Hier ist die Syntax als Referenz:
Tunwährend [Bedingungsreferenz]
[Kriterienangaben]
Schleife
Die Schleife beginnt mit dem Schlüsselwort do-while, gefolgt von den Start- und Endreferenzen. Der erste Teil der Syntax steuert die gesamte Schleife. Als nächstes müssen Sie die Anweisungen definieren, die jedes Mal ausgeführt werden, wenn die Schleife ausgeführt wird.
Sobald die Schleifenbedingung schließlich einen False-Wert annimmt, wird das Schlüsselwort loop ausgeführt und die Schleife verlassen. Dies ist eine Gesamtstruktur; Sie können es verfeinern, um verschiedene Aktionen auszuführen. Hier sind einige Beispiele, um sich mit der Funktionsweise einer do-while-Schleife vertraut zu machen.
Schreiben Sie Ihren ersten Do-While-Loop-Code
Angenommen, Sie möchten die Vielfachen von zwei in Spalte A anzeigen. Die Bedingung ist, die Zahlen zu drucken, bis der Zähler 20 erreicht.
Navigieren Sie dazu in Ihrem Excel zur Registerkarte „Entwickler“ und öffnen Sie den Codierungseditor. drücken Sie alternativ Alt + F11 direkt den Codiereditor zu öffnen. Klicken Sie im Code-Editor-Fenster auf die Einfügung Registerkarte und fügen Sie ein neues Modul hinzu.
Sie müssen den gesamten Code in dieses Modulfenster schreiben. Fügen Sie den folgenden Code in das Modul ein:
Sub dowhileloop()
Dim a Als Ganze Zahl
a = 1
TunWährend ein <= 10
Zellen (a, 1) = 2 * a
a = a + 1
Schleife
Ende Sub
Der Kodex erklärt
Hier ist eine Aufschlüsselung des Codes, um Ihnen zu helfen, die Grundlagen zu meistern:
- Unterprogramm verwenden: Um mit dem Schreiben des Codes in Excel VBA zu beginnen, erstellen Sie eine äußere Hülle mit einer Unterroutinenfunktion (Sub). Geben Sie ihm einen aussagekräftigen Namen, der zum Zweck des Codes passt. In diesem Beispiel können Sie den Namen dowhileloop gefolgt von () verwenden.
- Datentypen definieren: Die Funktion dimension (dim) muss verwendet werden, um die variablen Datentypen zu deklarieren. Durch die Deklaration des Datentyps können Sie Ihren Code effizienter gestalten und die Ausführungsgeschwindigkeit verbessern. In diesem Fall die Variable A speichert ganzzahlige Werte, verwenden Sie also den ganzzahligen Datentyp, um ihn zu definieren. Sie können die Startzeilennummer in dieser Variablen speichern, um den Startdatenpunkt Ihrer do-while-Schleife zu deklarieren.
- Bedingung(en) definieren: Jetzt ist es an der Zeit, die Bedingung zu übergeben, um die do-while-Schleife zu steuern. Du kannst den... benutzen tun, während Schlüsselwörter, gefolgt von der Bedingung. Da Sie die Schleife zehnmal durchlaufen möchten, verwenden Sie die Bedingung a < = 10.
- Übergeben Sie die ausführbaren Anweisungen: Es ist wichtig, dass Sie den Unterschied zwischen kennen Cells-Funktion und die Range-Funktion in VBA. Die Zellenfunktion verwendet die Zeilen- und Spaltenreferenzen in VBA. Wenn beispielsweise während der ersten Iteration der Wert von a = 1 ist, lautet die Zellformel (1,1). Im VBA-Speicher entspricht dies der Zelle A1. Jedes Mal, wenn die Schleife ausgeführt wird, erhöht sich der Wert der definierten Variablen und die Referenz bewegt sich zur nächsten verfügbaren Zelle.
- Erhöhen Sie Ihre Variable: Du kannst passieren a = a + 1 Anweisung zum Erhöhen der Zellenwerte. Dadurch wird die Schleife zum nächsten Teil der Bedingung verschoben; die Schleife läuft weiter, bis die Bedingung einen False-Wert annimmt.
- Verlassen Sie die Loop-Bedingung: Sobald die Bedingung False ist, wird die Schleife mit dem Schlüsselwort Loop und schließlich die Subroutine mit dem Schlüsselwort End Sub beendet.
- Ausführen des Codes: Da der Code bereit ist, drücken Sie einfach die F5-Taste oder die grüne Play-Schaltfläche in der oberen Menüleiste, um den Code auszuführen.
Das Endergebnis zeigt eine Liste von Zahlen von 2-20 in Spalte A.
Verwenden einer vorab ausgefüllten Spalte als Schleifenbedingung
Nachdem Sie nun die Syntax und die Nuancen beim Aufbau einer Grundstruktur verstanden haben, warum schreiben Sie nicht einen weiteren Code, um ähnliche Zahlen auf der Grundlage bereits vorhandener Kriterien auszugeben? Sie können beispielsweise eine Schleifenbedingung erstellen, die ihren Hinweis aus Spalte A aufnimmt und die Ausgabe in Spalte B ausgibt.
Basierend auf den insgesamt ausgefüllten Zellen in Spalte A können Sie in Spalte B ein Vielfaches von zwei drucken. Die Schleife wird basierend auf der Gesamtzahl der vorbelegten Zellen in Spalte A ausgeführt. Da der Startzeilenwert eins ist (a = 1), ist der Endwert dynamisch und wird von der do-while-Schleife automatisch berechnet.
Unter Verwendung seines Zeilenwerts durchläuft der Code jede Zelle in Spalte A und multipliziert die Zahl mit 2. Die Ausgabe wird in Spalte B angezeigt.
Wenn in Spalte A mehr als zehn Werte vorhanden sind, wird die Schleife ausgeführt, bis sie in der ersten Spalte auf einen leeren Wert stößt. In ähnlicher Weise können Sie noch komplexere Bedingungen in die do-while-Schleife schreiben und sie verwenden, um Bedingungen zu überprüfen und die Ausgabe nach Bedarf anzuzeigen.
Verwenden einer IF-Anweisung innerhalb einer Do-While-Schleife
Wie bei verschachtelten Schleifen können Sie die IF-Anweisung innerhalb der Do-While-Schleife verwenden, um eine weitere Bedingungsebene hinzuzufügen. In einem solchen Fall führt die do-while-Schleife die gesamte Schleife aus, bis die Bedingung falsch ist, und die innere IF-Anweisung wird jedes Mal ausgeführt, wenn die Schleife ausgeführt wird.
Im folgenden Beispiel durchläuft die do-while-Schleife jede Zelle in Spalte A, bis sie auf eine leere Zelle trifft. Anschließend überprüft die IF-Anweisung den Wert jeder Zelle in Spalte A und gibt die Ausgabe in Spalte B aus. Sobald die äußere Schleife auf eine leere Zelle in Spalte A trifft, stoppt die Schleife und verlässt die Unterroutine.
Die Ausgabe ist wie folgt:
Bis der Wert in Spalte A kleiner als fünf ist, ist der resultierende Wert in Spalte B fünf. Da der Zellenwert in A6 größer als fünf ist, ist die resultierende Ausgabe sieben, was mit der IF-Bedingung synchron ist.
Enträtseln der facettenreichen Funktionalitäten von VBA
Excel und VBA bilden eine sehr förderliche Kombination für die Durchführung erweiterter Datenanalysen. Auch ohne VBA können Sie verschiedene logische Excel-Funktionen verwenden, um komplizierte Aufgaben auszuführen, was Ihre Programmierkenntnisse veranschaulicht.
Wenn Sie sich für Datenanalyse interessieren und Excel bei Ihren regelmäßigen Aktivitäten verwenden, können Sie enorm von den vielseitigen logischen Funktionen von Excel profitieren.