Microsoft Office Tutorials and References
In Depth Information
19.9.6 Kontrollstrukturen : Bedingungen
Die If-Bedingung
Datenfelder werden über die DIM -Anweisung wie jede
andere Variable dimensioniert, sie unterscheiden sich
durch die in Klammern angegebene Elementzahl (siehe
nachfolgenden Abschnitt: Beispiel: Lottozahlen ).
Um eine Entscheidung aufgrund des Wahrheitsgehalts
einer Bedingung herbeizuführen, wird eine If -Anwei-
sung eingesetzt. Die Anweisung stellt die Bedingung auf
und verzweigt je nach Ergebnis auf die nächstfolgende
oder übernächste Anweisung. Damit im Makrocode
eindeutig festgehalten fist, wann die Bedingung zu Ende fist,
wird der Anweisungsblock mit End If abgeschlossen.
HINWEIS Achten Sie darauf, dass die Indizierung
bei 0 beginnt, das erste Datenfeld hat die
Bezeichnung namen(0) . Es gibt eine Möglichkeit, alle
Indizes eines Moduls bei 1 beginnen zu lassen. Schreiben
Sie dazu zu Beginn des Moduls diese Anweisung:
HINWEIS
If bedingung = wahr then
Nächste Anweisung
Else
Übernächste Anweisung
End If
Option Base 1
Mit der Anweisung ReDim wird ein Datenfeld innerhalb
der Prozedur oder der Funktion neu dimensioniert.
Wenn Sie das Schlüsselwort Preserve dazunehmen,
bleiben die bereits belegten Elemente erhalten, ansonsten
werden sie gelöscht:
Alternative: Wenn nur eine Aktion als Folge auf den
Wahrheitswert WAHR der Bedingung folgt, genügt es,
die Anweisung ohne End If in eine Zeile zu schreiben:
If bedingung = wahr then Nächste Anweisung
ReDim Datenfeld(100)
oder
Nicht selten werden in einem Bedingungsblock auch
mehrere Alternativen angeboten. Sie können diese mit
dem Zusatz ElseIf in den Block einbauen:
If bedingung = wahr then
Anweisung
ElseIf zweitebedingung = wahr then
Anweisung
ElseIf drittebedingung = wahr then
Anweisung
End If
ReDim Preserve Datenfeld(100)
19.9.6 Kontrollstrukturen: Bedingungen
Für den strukturellen Ablauf eines Programms sind
Kontrollstrukturen verantwortlich. Der Begriff stammt noch
aus der Zeit der Lochkartenleser. Die Lochkartenstapel
bekamen Kontrollkarten, die den Leser veranlassten,
einen Teil des Stapels wiederholt zu lesen oder eine
bestimmte Karte anzusteuern.
Die Select Case-Anweisung
Die With-Klammer
With fist ein sehr nützlicher Befehl. Wenn Sie einem
Objekt nacheinander mehrere Eigenschaften zuweisen
oder mehrere Methoden aufrufen wollen, können Sie
mit With etwas Schreibarbeit sparen.
Eine zusätzliche und häufig bessere Alternative zu den
If -Bedingungen bietet die Select Case -Anweisung. Ein
Ausdruck wird nicht wie bei If mit einem Wert
verglichen, sondern mit mehreren. Der Block hält dann für
jedes Ergebnis eine Anweisungsfolge bereit.
Select Case Ausdruck
Case Fall1
Anweisungen
Case Fall2
Anweisungen
....
End Select
Der Makrorekorder macht regen Gebrauch von With , bei
Formatieranweisungen weist er z.B. immer alle
Formatierungen zu, auch wenn diese gar nicht geändert
wurden:
With Selection.Font
.Name = "Arial“
.FontStyle = "Standard“
.Size = 11
.ColorIndex = xlAutomatic
End With
Verwenden Sie Select Case anstelle von If , wenn die
Bedingung mehr als zwei Ergebnisse liefern kann. Das
Makro prüft ein Zelldatum ab und belegt in Abhängig-
 
Search JabSto ::




Custom Search