'einzeilige Syntax
If Bedingung Then Anweisung1 [Else Anweisung2] 'mehrzeilige Syntax
|
Select Case VariablenName
Case Variablenwert 1 Anweisungen 1 Case Variablenwert 2 Anweisungen 2 ... [Case Else Anweisungen X] End Select |
Einfache Auswahl unter zwei oder mehr Möglichkeiten.
Es wird der Wert zurückgeliefert, bei dem die Bedingung erfüllt
ist.
wert = Switch ( Bedingung1, Wert1 [, Bedingung2, Wert2... ]) |
Liefert in Abhängigkeit von der Bedingung den ersten
Wert (bei true) sonst den zweiten (bei false)
wert = IIf (bedingung, wert1, wert2) |
Liefert je nach dem Zahlenwert von zahl den ersten, zweiten,
... Wert zurück.
wert = Choose ( zahl, wert1, wert2, wert3, ..) |
Abbruchbedingung am Anfang
|
Abbruchbedingung am Ende
|
Do [while | until ] Bedingung
[Anweisungen] [if Bedingung then Exit Do] [Anweisungen] Loop |
Do
[Anweisungen] [if Bedingung then Exit Do] [Anweisungen] Loop [while | until ] Bedingung |
In den Fenstern jeweils eine Exit Do-Klammer als Option eingefügt. Das vorzeitige Verlassen einer Schleifenstruktur sollte im Programm die absolute Ausnahme sein. Ein möglicher, legitimer Fall ist das Auftretens eines Fehlers.
Eine notwendige Anmerkung zu den Abbruchbedingungen: Man muß immer sicherstellen, daß Abbrüche auch eintreten können. Wenn ein "Wert1" z.B. in Zehntel-Schritten anwächst, dann führt eine Bedingung "Wert1=1999" mit ziemlicher Sicherheit nicht zum Schleifenabbruch. Wert1 wird nämlich stattdessen so etwas wie die Folge 1998,999933 .. 1999,000033 durchlaufen. In solchen Fällen besser "Wert1>=1999" wählen.
Wenn die Anzahl erforderlicher Umläufe vorher bekannt
ist, hat die For.. Next-Schleife Vorteile, weil sie schnell und platzsparend
abgearbeitet wird. Wird Step nicht angegeben, dann wird der Zähler
bei jedem Umlauf um 1erhöht. Beliebter Fehler: Die Zählvariable
kann innerhalb der Schleife (ungewollt) manipuliert werden, die Schleife
bricht zum falschen Zeitpunkt oder gar nicht mehr ab.
For Zähler = Anfang to Ende [Step Schritt]
[Anweisungen] Next |
For Each element In gruppe
[Anweisungen] Next |
While Bedingung
[Anweisungen] Wend |
Eine Schleife, die prinzipiell nur einmal durchlaufen
wird
With Objekt
[Anweisungen] [If Bedingung Exit With] [Anweisungen] End With |
Die With-Konstruktion erleichtert lediglich die Schreibung und erhöht die Ausführungsgeschwindigkeit. So genügt für einen benutzerdefinierten Datentyp die einmalige Angabe des Namens in der Kopfzeile, Zuweisungen erfolgen dann im Funktionskörper mit der Syntax ".zugehörige_Variable = ...".