Array-Liste in VBA
Wir stellen die Listen in VBA und ihre Verwendung in unseren Programmen anhand von Beispielen vor.
Array-Liste in VBA
Es gibt viele Situationen, in denen wir Daten in einer Datenstruktur speichern müssen, um sie in Nachrichten anzuzeigen oder sie in einer Excel-Tabelle auszugeben. Zu diesem Zweck stellt VBA ArrayList
bereit, eine Datenstruktur, die wir verwenden können, um Daten zu speichern.
Wie wir alle wissen, haben Arrays eine feste Länge, aber wenn wir ArrayList
verwenden, um eine Vielzahl von Werten zu erstellen, ist es nicht durch eine feste Größe begrenzt.
Um ArrayList
zu verwenden, müssen wir die Referenz setzen, da es sich um eine externe Bibliothek oder ein Objekt handelt. Es gibt zwei Array-Typen in VBA.
Das erste ist das statische Array, das bei der Zeitdeklaration die Unter- und Obergrenze kennen muss. Andererseits ist das zweite ein dynamisches Array, das zum Zeitpunkt der Deklaration keine Unter- oder Obergrenze erfordert.
Trotzdem müssen wir die Länge angeben, nachdem wir die dynamischen Arrays mit der Anweisung redim
in VBA deklariert haben. Bei Verwendung von ArrayList
müssen wir jedoch keine Ober- oder Untergrenze angeben.
Lassen Sie uns zuerst die Referenz setzen, bevor Sie in unseren Beispielen die ArrayList
verwenden. Um die Referenz festzulegen, müssen wir die folgenden Schritte ausführen.
-
Zuerst müssen wir zur Registerkarte Entwickler gehen und auf Visual Basic klicken, wie in der Abbildung unten gezeigt.
-
Wir gehen zum Menü Extras und klicken auf Referenz, wie unten im Bild gezeigt.
-
Jetzt suchen wir nach der Referenz
mscorlib.dll
, wählen sie aus und klicken auf OK, wie in der Abbildung unten gezeigt.
Nachdem wir die Referenz der ArrayList
gesetzt haben, gehen wir ein Beispiel durch, in dem wir eine ArrayList
von Früchten erstellen. Zuerst erstellen wir unser sub
, wie unten gezeigt.
# VBA
Sub testExample()
End Sub
Jetzt definieren wir in unserer Funktion fruits
als ArrayList
und setzen die Variable auf eine neue ArrayList
, wie unten gezeigt.
# VBA
Sub testExample()
Dim fruits As ArrayList
Set fruits = New ArrayList
End Sub
Jetzt fügen wir der ArrayList
nacheinander Elemente hinzu, indem wir die Methode Add
verwenden und ihr direkt eine Reihe von Fruchtnamen zuweisen, wie wir wollen.
# VBA
Sub testExample()
Dim fruits As ArrayList
Set fruits = New ArrayList
fruits.Add "Mango"
fruits.Add "Apple"
fruits.Add "Banana"
End Sub
Wenn wir nun eine dieser Früchte aufrufen möchten, können wir sie schnell aufrufen, indem wir die Referenzreihenfolge verwenden, in der sie hinzugefügt wurden. Wenn wir beispielsweise die erste Frucht aus der ArrayList
erhalten möchten, können wir sie schnell so aufrufen, wie wir jedes Objekt aus einem Array aufrufen, indem wir den Index dieses Arrays verwenden.
Lassen Sie uns versuchen, Früchte
in der gleichen Reihenfolge wie unten gezeigt in einem Meldungsfeld anzuzeigen.
# VBA
Sub testExample()
Dim fruits As ArrayList
Set fruits = New ArrayList
fruits.Add "Mango"
fruits.Add "Apple"
fruits.Add "Banana"
MsgBox ("First Fruit is: " & fruits(0) & vbNewLine & "Second Fruit is: " & fruits(1) & vbNewLine & "Third Fruit is: " & fruits(2))
End Sub
Lassen Sie es uns jetzt ausführen und überprüfen, wie es funktioniert:
Wie wir aus dem obigen Beispiel sehen können, ist es sehr einfach, die Werte aus der ArrayList
zu verwenden und auszugeben, und wir können mit einer einfachen Methode von Add
problemlos so viele Werte in der ArrayList
speichern.