IBM Lotus Symphony
|
Wiederholt die Anweisungen innerhalb des For...Next-Blocks für eine bestimmte Anzahl von Durchläufen.
For Zaehler=Anfang To Ende [Step Schritt]
Anweisungsblock
[Exit For]
Anweisungsblock
Next [Zaehler]
Zaehler: Schleifenzähler, dem zunächst der Wert rechts neben dem Gleichheitszeichen (Anfang) zugewiesen wird. Es sind nur numerische Variablen zulässig. Der Schleifenzähler wird entsprechend der Variablen "Schritt" erhöht oder verringert, bis der Wert "Ende" durchlaufen wurde.
Anfang: Numerische Variable, die den Anfangswert zu Beginn der Schleife festlegt.
Ende: Numerische Variable, die den Endwert zum Schluss der Schleife festlegt.
Schritt: Legt den Wert fest, um den der Schleifenzähler bei jedem Durchlauf erhöht oder verringert werden soll. Wird "Schritt" nicht angegeben, so wird der Schleifenzähler um 1 erhöht. In diesem Fall muss "Ende" größer sein als "Anfang". Wenn Sie "Zaehler" herunterzählen möchten, muss "Ende" kleiner als "Anfang" sein, und "Schritt" muss ein negativer Wert zugewiesen werden.
Die For...Next-Schleife wiederholt alle Anweisungen innerhalb der Schleife so oft, wie es in den Parametern angegeben ist.
Bei jeder Verringerung der Zählervariablen prüft Lotus® Symphony™ Basic, ob der Endwert erreicht ist. Sobald der Zähler den Endwert durchläuft, wird die Schleife automatisch beendet.
Sie können For...Next-Anweisungen verschachteln. Wenn Sie nach der Next-Anweisung keine Variable angeben, bezieht sich Next automatisch auf die letzte vorhergehende For-Anweisung.
Bestimmen Sie eine Schrittweite von 0, dann werden die Anweisungen zwischen For und Next endlos ausgeführt.
Beim Hoch- bzw. Herunterzählen der Zählervariablen führt Lotus Symphony Basic eine Überprüfung auf Überlauf und Unterlauf durch. Die Schleife wird beendet, wenn "Zaehler" größer als "Ende" (positiver Schrittwert) bzw. kleiner als "Ende" (negativer Schrittwert) ist.
Um die Schleife bedingungslos zu verlassen, verwenden Sie die Anweisung Exit For. Diese Anweisung muss in einer For...Next-Schleife stehen. Verwenden Sie wie folgt die If...Then-Anweisung, um die Ausstiegsbedingung zu prüfen:
For...
Befehle
If Bedingung = True Then Exit For
Befehle
Weiter
Hinweis für die Verschachtelung von For...Next-Schleifen: Beim unbedingten Verlassen einer Schleife durch Exit For wird grundsätzlich nur eine Schleife beendet.
In dem folgenden Beispiel werden zwei ineinander verschachtelte Schleifen verwendet, um ein Zeichenfolgefeld mit zehn Elementen ( sEntry() ), die zunächst mit verschiedenen Namen vorbelegt werden, zu sortieren:
Sub SortierenB
Dim sEntry(9) As String
Dim iCount As Integer
a$(3) = "Thorsten"
a$(4) = "Manfred"
sEntry(0) = "Jerry"
a$(5) = "Erwin"
a$(6) = "Timo"
a$(7) = "Karsten"
a$(8) = "Regina"
a$(9) = "Christiane"
a$(10) = "Uta"
For z% = 1 To 9
For z2% = z% + 1 To 10
If a$(z%) > a$(z2%) Then
For iCount = 0 To 9
For iCount2 = iCount + 1 To 9
Next z2%
Next z%
For z% = 1 To 10
Print a$(z%)
End If
sEntry(iCount) = sEntry(iCount2)
Next iCount
For iCount = 0 To 9
Print sEntry(iCount)
Next iCount
End Sub