Kapitel 31
Eigene Makros programmieren
1118
Mehr zum Thema Hyperlinks finden Sie in Kapitel 28, mehr zur Tabellenfunktion Hyperlink in
Kapitel 15.
Verzweigungen in Programmen
Aus einem Excel-Arbeitsblatt ist Ihnen die Tabellenfunktion
WENN(Prüfung, Dann_Wert, Sonst_Wert)
schon bekannt (vgl. z.B. Kapitel 15). Sie verwenden diese Funktion, um eine Bedingung zu prüfen
und, wenn das Ergebnis der Prüfung Wahr ist, das Argument, das Sie mit Dann_Wert festgelegt
haben, auszugeben. Ist das Ergebnis der Prüfung Falsch, wird der Sonst_Wert ausgegeben. Analog zu
diesem Verfahren können Sie auch mit VBA Bedingungen prüfen.
Um z.B. eine Benutzereingabe wie im vorigen Beispiel zu prüfen und anschließend unterschiedliche
Reaktionen auf die Eingabewerte auszuführen, wird die
If...Then-
Anweisung verwendet. Sie
erlaubt eine bedingte Ausführung von Anweisungen aufgrund der Auswertung eines Ausdrucks.
Beispiel für die Blockform von
If...Then...Else:
Beim Ausführen des
If
-Blocks überprüft VBA die Bedingung1. Wenn der Ausdruck Wahr ist, wer-
den die nach
Then
folgenden Anweisungen ausgeführt. Wenn der erste Ausdruck Falsch ist, beginnt
VBA, alle
ElseIf
-Bedingungen (sofern vorhanden) nacheinander auszuwerten. Sobald VBA eine
Listing 31.3
Die Namen aller Arbeitsblätter in eine Tabelle eintragen
Sub ListSheets_as_Hyperlink()
On Error Resume Next
Dim i As Integer, a As Integer
Dim wks As Worksheet
If MsgBox("Blattnamen als Hyperlink eintragen?", _
vbYesNo) <> vbNo Then
Set wks = Worksheets.Add
Cells(1, 1).Select
For i = 1 To Application.Worksheets.Count
If wks.Name <> Worksheets(i).Name Then
wks.Hyperlinks.Add Anchor:=ActiveCell.Offset(a, 0), _
Address:="", SubAddress:= _
"'" & Application.Worksheets(i).Name & "'!A1"
a = a + 1
End If
Next i
Set wks = Nothing
End If
End Sub
If Bedingung1 Then
[Anweisungsblock1]
[ElseIf Bedingung2 Then
[Anweisungsblock2] ]
. . .
[Else
[Anweisungsblockn] ]
End If
Get Microsoft Office Excel 2007 - Das Handbuch now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.