| Programmschleifen |
| | | |
| | | |
| Deutsch | English | Hinweise | Syntax |
| Wenn | If (...Then Else End If) | Leitet eine Entscheidung ein. Der If-Then-Befehl führt die auf Then folgenden Befehle nur dann aus, wenn der auf If folgende Ausdruck Wahr (ungleich Null) ist | If 77 Then Ausführen |
| Dann | Then | Teil einer If Then-Entscheidung | If Temperatur > 20 Then Einschalten If Treffer > 19 Then Fehler = True |
| Sonst | Else | Leitet den Zweig einer If Then-Entscheidung ein. Kann auch Bestandteil einer Select Case-Entscheidung sein | If Spielstand > 10 Then MsgBox "Gewonnen!" Else MsgBox "Möchten Sie weiterspielen?" End If |
| EndeWenn | End If | Beendet den mehrzeiligen Zweig einer If Then-Entscheidung | If Gewinn > 1000 Then Wiederholen = False WinnerName = PlayerName End If |
| SonstWenn | ElseIf | Zweig einer If Then-Entscheidung (gegenüber dem Else-Befehl Verkürzung möglich) | If Spielstand > 10 Then MsgBox "Winner!" ElseIf MsgBox "Weiterspielen?" End If |
| Prüfe | Select (...Case...) | Leitet eine Mehrfach-Entscheidung ein | Select Case Produktname Case Fall1: Befehl_1: Befehl_2: Befehl_3 Case Fall2: Befehl Case Else: Fehler = True End Select |
| Fall | Case | | Select Case Zeichen Case "0" To "9": zString = zString & Zeichen Case Else: Befehl End Select |
| Fall | Case Is | Prüft einen Zweig einer Select Case-Mehrfach Entscheidung | Select Case Zahl Case Is > 100: MsgBox "Zahl größer 100" Case Is < 50: MsgBox "Zahl kleiner 50" |
| EndePrüfe | End Select | Beendet eine Select Case-Mehrfach-Entscheidung | End Select |
| Für | For (...Next) | Leitet eine For Next-Schleife ein, die eine bestimmte Anzahl an Durchläufen macht; die Anzahl der Durchläufe steht also von Beginn an fest. Schleifen benötigen einen Startwert, einen Endwert, sowie ggf. eine Schrittweite | Dim n As Integer (oder Long: keine Nachkommastellen) For n = 1 To 100 (Nachkomma mit Integer unmöglich) Debug.Print n Next |
| Schrittweite | Step | Legt die Schrittweite bei einer For Next-Schleife fest. Besitzt die Schrittweite einen Nachkomm-anteil, benötigt man den genauen Deklarations-Typ | Dim beta As Currency (Double oder Decimal) For beta = 1 To 300 Step 0.3 Befehle Next |
| Nächste | Next | Teil einer For Next-Schleife: Beendet die durch den For-Befehl eingeleitete Programmschleife | Dim Heute As Single (zeigt Nachkommastellen an) For Heute = 10 To -10 Step -0.1 Befehle Next |
| Durchlaufe | Do (...Loop) | Leitet eine Do Loop-Schleife ein, die so lange läuft, bis eine Abbruchbedingung erfüllt ist; die Anzahl der Durchläufe ist unbekannt. Fehlt diese Abbruchbedingung, ist die Schleife endlos und wird unendlich oft durchlaufen | Do (ProzedurName) StartKapital = StartKapital * (1 + Zins / 100) Loop Until Kapital > EndKapital |
| Ereignisse | DoEvents | Während der Durchläufe soll die Endlosschleife auf andere Ereignisse reagieren können | Do While DoEvents Befehle Loop |
| BisWahr | Until | Legt die Abbruchbedingung einer Do Loop-Schleife fest. Mehr zur Funktion "EOF" siehe dort | Do Until EOF(DateiNr) Line Input DateiNr, Eingabezeile AnzahlZeilen = AnzahlZeilen + 1 txtAusgabe.Text = txtAusgabe.Text & Eingabezeile Loop |
| Solange | While | Legt die Abbruchbedingung einer Do Loop-Schleife fest. Anstatt While kann auch Until verwendet werden, dann jedoch ohne den Not-Operator | Do Line Input DateiNr, Eingabezeile AnzahlZeilen = AnzahlZeilen + 1 txtAusgabe.Text = txtAusgabe.Text & Eingabezeile Loop While Not EOF(DateiNr) |
| Schleife | Loop | Teil einer Do Loop-Schleife. Beendet die durch den Do-Befehl eingeleitete Programmschleife | Do While n < 10 n = n + 1 Debug.Print n Loop |
| Für | For (...Each) | Leitet eine For Each-Schleife ein. Wird für das Durchgehen einer (Objekt-)Auflistung verwendet | |
| Alle | Each | Teil einer For Each-Schleife | |
| GeheZu | GoTo | Führt einen Sprung innerhalb einer Prozedur oder Funktion durch. (Ist der Wert der Variablen "Wert" größer als Null, werden die dazwischen befindlichen Befehle übersprungen. Die Sprungmarke muss sich jedoch innerhalb der Prozedur "Form_Load" befinden.) | Sub Form_Load () If Wert > 0 Then GoTo Sprungmarke Befehle_123 Sprungmarke: Befehle_789 End Sub |
| Verlasse | Exit | Verlässt eine Programmschleife, Prozedur oder Funktion. Wird im allgemeinen in einer If-Abfrage ausgeführt | Exit Do, Exit For, Exit Function, Exit Property, Exit Sub |
| | | |
| | | |
| | | |
| | | |
| | | |