While Wend Schleife in Excel VBA
In diesem Tutorial zeige ich Euch wie Ihr die While Wend Schleife anwenden könnt. Die While Wend Schleife ist sehr einfach aufgebaut. Die Schleife wird solange durchlaufen solange die Bedingung erfĂŒllt ist. Achtet aber unbedingt darauf dass Ihr daraus keine Endlaufschleife macht. Am Besten ist es wenn man das erste Mal den Ablauf Schrittweise ausfĂŒhrt. Falls Ihr nĂ€mlich versehentlich eine Endloschleife erstellt habt, dĂŒrft ihr Excel hart beenden.
Das Startvideo der VBA Tutorial Serie auf YouTube findet Ihr hier
Die Playlist meiner VBA Tutorial Serie auf YouTube findet Ihr hier
Achtung:
Benutzt zum Ăben eine separate Tabelle fĂŒr Testzwecke oder eine Kopie des Originals damit Euch keine Daten verloren gehen.
Video zu diesem Tutorial:
Beispielscript mit der While Wend Schleife
Im nachfolgenden Excel VBA Script zeige ich Euch wie Ihr mit der While Wend Schleife die Zellen A1 bis A10 mit den Zahlen 1 bis 10 fĂŒllt.
Ich verwende dafĂŒr Cells, welche 2 Parameter benötigt.
Cells(ZeilenNummer, SpaltenNummer)
Achtung: Ihr mĂŒsst bei solchen Schleifen immer darauf achten dass Ihr daraus keine Endlosschleife macht. Deshalb ist es ratsam mit der Taste F8 die Schleife erst einmal Schrittweise auszufĂŒhren um zu sehen ob die Schleife zum erhofften Schluss auch verlassen wird.
Die ZÀhlervariable x wird am Ende der While Schleife immer um eins erhöht damit wir den Wert von 10 auch irgendwann erreichen.
Sub WhileWendTutorial() x = 1 While x <= 10 Cells(x, 1).Value = x x = x + 1 Wend End Sub
Beispielscript mit der While Wend Schleife und If Abfrage
Im zweiten Beispiel benutze ich die While Schleife um die Zellen nach EintrĂ€gen zu ĂŒberprĂŒfen. Die Schleife arbeitet sich von Zeile 1 bis in die letzte Zeile vor wo noch ein Eintrag vorhanden ist.
<>"" Bedeutet so viel wie kleiner gröĂer nichts. Also wird die Bedingung immer so lange erfĂŒllt solange noch ein Eintrag in einer Zelle vorhanden ist.
Die If Bedingung prĂŒft ob in der jeweiligen Zeile in Spalte A eine 5 eingetragen ist. Wenn dem so ist, wird in der 2 Spalte also Spalte B ein x eingetragen.
Sub WhileWendTutorial2() x = 1 While Cells(x, 1).Value <> "" If (Cells(x, 1) = 5) Then Cells(x, 2).Value = "x" End If x = x + 1 Wend End Sub