7.6.2 Spezielle Variablennamen
7.6.3 Arrays
Arrays sind Datenfelder zum Speichern mehrerer Daten gleichen Datentyps. Diese Datenfelder können auch mehrdimensional ausgelegt werden.
Sie deklarieren ein Datenfeld entweder direkt mit der gewünschten Anzahl möglicher Werte oder lassen diesen Parameter offen:
Dim strVornamen() As String
oder
Dim strVornamen(10) As String
In beiden Fällen können Sie die Anzahl später noch mit der ReDim-Anweisung ändern. Diese gibt es in zwei Ausführungen: Ohne das Schlüsselwort Preserve werden alle enthaltenen Daten gelöscht, mit diesem Schlüsselwort behält das Array die vorhandenen Daten bei, was normalerweise gewünscht sein dürfte:
ReDim Preserve strVornamen(15) As String
Arrays beginnen standardmäßig mit dem Index 0. Wenn ein anderer Index gewünscht ist, wobei als einzige Alternative 1 erlaubt ist, verwenden Sie folgende Anweisung im Kopf des Moduls:
Option Base 1
Viele Fehler treten dadurch auf, dass auf Array-Elemente zugegriffen wird, die nicht vorhanden sind. Das können Sie - etwa in einer Schleife - mit den beiden Funktionen UBound und LBound verhindern. Diese Funktionen liefern den obersten und den untersten Index eines Arrays zurück.
Folgendes Beispiel fasst die wichtigsten Funktionen von Arrays zusammen:
Option Base 1
Public Sub BeispielArray()
Dim strName() As String Dim intUntereGrenze As Integer Dim intObereGrenze As Integer Dim i As Integer
'Felddimensionen festlegen ReDim Preserve strName(3)
strName(1) = "André" strName(2) = "Sascha" strName(3) = "Rita" 'Feld für Nachzügler erweitern ReDim Preserve strName(4)
strName(4) = "Sylvia"
intUntereGrenze = LBound(strName) intObereGrenze = UBound(strName)
For i = intUntereGrenze To intObereGrenze Debug.Print strName(i) Next i
End Sub
Listing 7.6: Beispiel für die Verwendung eines Arrays
Nächster Abschnitt:
7.6.4 Benutzerdefinierte Typen
|