
In VBA (Visual Basic for Applications) wird die `Array`-Funktion verwendet, um ein Array zu erstellen. Ein Array ist eine Datenstruktur, die es ermöglicht, mehrere Werte in einer einzigen Variablen zu speichern. Hier ist, wie Sie die `Array`-Funktion verwenden können:
Erstellen eines Arrays mit der `Array`-Funktion
Die `Array`-Funktion erstellt ein Array mit der angegebenen Liste von Werten. Hier ist ein einfaches Beispiel:
Sub ArrayBeispiel()
Dim meineArray As Variant
meineArray = Array(1, 2, 3, 4, 5)
' Zugriff auf Elemente des Arrays
Dim i As Integer
For i = LBound(meineArray) To UBound(meineArray)
Debug.Print meineArray(i)
Next i
End Sub
In diesem Beispiel:
- `meineArray` wird als `Variant` deklariert, da die `Array`-Funktion ein Array vom Typ `Variant` zurückgibt.
- `LBound` und `UBound` werden verwendet, um die unteren und oberen Grenzen des Arrays zu ermitteln, was hilfreich ist, wenn Sie Schleifen verwenden, um alle Elemente durchzugehen.
Dinge, die zu beachten sind
- Indexierung: Das Standardindexierungsformat in VBA beginnt bei 0. Dies bedeutet, dass das erste Element eines Arrays `Array(0)` ist.
- Datentyp: Da `Array` ein `Variant`-Array zurückgibt, können Sie verschiedene Datentypen in dasselbe Array mischen, obwohl dies möglicherweise nicht immer empfohlen wird.
- Dynamische Arrays: Wenn Sie ein Array benötigen, dessen Größe sich zur Laufzeit ändern kann, müssen Sie es als dynamisches Array deklarieren und mit `ReDim` (und optional `Preserve`) konfigurieren, um die Größe zu ändern.
Beispiel für ein dynamisches Array:
Sub DynArrayBeispiel()
Dim dynArray() As Integer
Dim i As Integer
ReDim dynArray(0 To 2) ' Erstellen Sie ein Array mit 3 Elementen.
For i = 0 To 2
dynArray(i) = (i + 1) * 10
Next i
' Ausgabe der Array-Elemente
For i = LBound(dynArray) To UBound(dynArray)
Debug.Print dynArray(i)
Next i
' Ändern der Größe des Arrays
ReDim Preserve dynArray(0 To 4)
dynArray(3) = 40
dynArray(4) = 50
' Ausgabe der erweiterten Array-Elemente
For i = LBound(dynArray) To UBound(dynArray)
Debug.Print dynArray(i)
Next i
End Sub
Hierbei behält `Preserve` die bestehenden Werte im Array, während seine Größe geändert wird. Es ist jedoch wichtig zu beachten, dass `Preserve` nur die letzte Dimension eines mehrdimensionalen Arrays beibehalten kann.
Durch die Verwendung der `Array`-Funktion in VBA können Sie effektiv mit Arrays arbeiten, um Daten zu verwalten und zu verarbeiten.