Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Excel 2016 VBA Grundkurs

Schleifen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Programmcode enthält meist eine große Anzahl an Schleifen. Sehen Sie in diesem Überblick, wofür welcher Befehl am besten geeignet ist und lernen Sie seine Syntax kennen.

Transkript

Schleifen sind das häufigste, was in einem Computerprogramm vorkommt. Wenn der Computer überhaupt irgendwas gut kann, dann ist es Wiederholung. Und zwar die Wiederholung einer Programmverzweigung. Nur eben nicht einer einzelnen, wie es die Entscheidung im If oder im Select Case macht, sondern eine wiederholte Programmverzweigung, eben in einer Schleife. Dort gibt es die beiden Schlüsselwörter For/Next beziehungsweise Do/Loop. Und das sind die, mit denen ich mich hier beschäftigen möchte. Die Schleifen lassen sich in zwei Arten aufteilen. Einmal die endlichen Schleifen - das ist das Schlüsselwort-Paar For/Next. Und dann die unendlichen Schleifen. Ich müsste genauer gesagt formulieren, die potentiell unendlichen Schleifen. Das ist Do/Loop. Fangen wir zuerst mit For/Next an. For/Next ist deswegen endlich, weil es schon zur Entwurfszeit die Anzahl der Durchläufe vorgibt. Dort steht entweder eine Zahl oder eine Variable, die eine Zahl enthält. Oder eine Function, die eine Zahl ermittelt. Auf jeden Fall ist dort ein Ende vorgegeben. Und deswegen müssen Sie auch eine Zählervariable deklarieren, damit bis zu dieser Zahl hoch oder, Sie werden es gleich sehen, heruntergezählt werden kann. Der eigentliche Kern dieser Schleife ohne die Deklaration der Zählervariablen sieht so aus: For, Zählervariable, gleich Anfangswert to Endewert. Das heißt hier kann ich sagen, es werden die Schritte 1, 2, 3, 4, 5 ausgeführt. Die sind ganzzahlig. Oder Sie wollen abwärts zählen, das ist nämlich genauso möglich. Dann sieht der Code so aus, dass Sie von Anfangswert groß to Endewert klein, und ausdrücklich Step -1 dazuschreiben. Auch hier könnten Sie Step 1 schreiben, das ist aber überflüssig. Erst wenn Sie sagen Step 2, in Zweierschritten weiterzählen, dann wäre auch hier der Parameter Step nötig. Die anderen, potentiell unendlichen Schleifen, sind mit den Schlüsselwörtern Do/Loop gekennzeichnet. Bei denen wird erst zur Laufzeit klar, wie viele Durchläufe es gibt. Das heißt, es werden Bedingungen benötigt, die dann sagen: Jetzt ist Schluss. Von der Do/Loop-Schleife gibt es vier mögliche Varianten. Ich nenne die eine mal Abweisend. Das ist in diesen beiden Beispielen zu sehen. Abweisend deswegen, weil schon vor dem ersten Ausführen der Schleife, die hier dazwischen steht, eine Bedingung steht. Und zwar hier positiv, da negativ - inhaltlich völlig identisch. Hier wird formuliert: Mache, während die Zählervariable kleiner als 100 ist. Und hier heißt es umgekehrt: Mache, bis die Zählervariable größer gleich 100 ist. Das ist inhaltlich dasselbe. Das ist mehr eine politische Frage, welche Formulierung gerade schöner ist, Ihnen besser passt, oder einfacher zu schreiben ist. In beiden Fällen wird die Bedingung schon vor dem ersten Schleifenschritt geprüft, und in dem Loop beim nächsten, und nächsten, und nächsten Schleifenschritt wiederum überprüft. Und die Schleife endet erst dann, wenn die Bedingung erfüllt ist. Zu der abweisenden Variante gibt es auch noch diejenige, die ich einladende Variante nenne. Das heißt, die Bedingung ist nur vom Do zum Loop gewandert. Hier wird also die Schleife garantiert wenigstens einmal betreten und der Code hier ausgeführt. Erst im Wiederholungsfall wird hier geprüft, ob es eine Wiederholung gibt. Auch hier die positive Variante, da die negative Variante. Da ist wirklich nur die Bedingung nach vorne oder nach hinten gewandert. Es könnte Ihnen natürlich passieren, dass Ihr Zähler mit der Zahl 17 beginnt und abwärts zählt, aus irgendeinem Grund. Dann wird diese Schleife ewig laufen, weil intI immer unter 100 bleibt. Deswegen gibt es gerade bei diesen potentiellen unendlichen Schleifen die sehr große Wahrscheinlichkeit, dass Sie Endlos-Schleifen haben. Endlos-Schleifen können Sie nur mit Steuerung+Pause unterbrechen. Wenn Sie Pech haben, müssen Sie anschließend Ihren Rechner booten, weil Ihre Schleife sich wirklich tief im System verankert hat. Aber im Normalfall können Sie mit dem Tastenkürzel Steuerung+Pause diese Schleife stoppen. Wenn Sie Schleifen programmieren, ist es noch wichtiger als sonst: immer speichern! Voher speichern. Sobald eine Schleife länger als auch nur ein paar Sekunden dauert, ist es sehr wahrscheinlich, dass Sie eine Endlos-Schleife erwischt haben. Es sei denn, es wären sehr komplexe Befehle da drin. Aber alles andere im Code läuft so extrem schnell, dass schon ein paar Sekunden Wartezeit für eine Endlos-Schleife spricht. Und das sollte man unbedingt vorher gespeichert haben - mehr noch als sowieso schon.

Excel 2016 VBA Grundkurs

Lassen Sie sich systematisch in die Excel-Programmierung mit Visual Basic for Applications (VBA) einführen.

7 Std. 25 min (66 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Hersteller:
Exklusiv für Abo-Kunden
Erscheinungsdatum:30.08.2016

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!