Excel VBA: Wenn-Dann-Sonstwenn-Funktion (If-Then-Elseif-Else)

In der Regel wird die Wenn-Dann-Sonstwenn-Funktion benötigt, um Abfragen zu ermöglichen. In diesem Beispiel wird der Wochentag des heutigen Datums abgefragt und ermittelt, ob es sich um einen Sonntag, einen Samstag oder um einen anderen Wochentag handelt.

Sub WelcherTag()
   If Weekday(Date) = 1 Then
      MsgBox "Heute ist Sonntag"
   ElseIf Weekday(Date) = 7 Then
      MsgBox "Heute ist Samstag"
   Else
      MsgBox "Heute ist " & Format(Weekday(Date), "dddd")
   End If
End Sub

Die Syntax Weekday(Date) = 1 ist die erste Abfrage. Es wird das heutige Datum geprüft und das Ergebnis mit dem Wert 1 (Sonntag) verglichen. Bei einem richtigen Wert wird durch die Syntax Then MsgBox "Heute ist Sonntag" eine Message-Box angezeigt. Die Funktion wäre in diesem Augenblick zu Ende. Weitere Abfragen werden nicht vorgenommen.

Ist die Abfrage jedoch falsch wird die zweite Abfrage ElseIf Weekday(Date) = 7 durchgeführt. Bei einem richtigen Wert wird durch die Syntax Then MsgBox "Heute ist Samstag" eine Message-Box angezeigt. Bei einem anderen Wochentag wird durch die Syntax MsgBox "Heute ist " & Format(Weekday(Date), "dddd") der heutige Wochentag ausgegeben.

Wenn Sie mehrere Abfragen durchführen möchten, dann bietet sich die Select Case-Funktion an. Die in einem anderen Artikel behandelt wird.