Array-Liste in VBA

Iqra Hasnain 15 Februar 2024
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.

  1. Zuerst müssen wir zur Registerkarte Entwickler gehen und auf Visual Basic klicken, wie in der Abbildung unten gezeigt.

    Festlegen der Referenz für ArrayList in VBA Schritt 1

  2. Wir gehen zum Menü Extras und klicken auf Referenz, wie unten im Bild gezeigt.

    Festlegen der Referenz für ArrayList in VBA Schritt 2

  3. Jetzt suchen wir nach der Referenz mscorlib.dll, wählen sie aus und klicken auf OK, wie in der Abbildung unten gezeigt.

    Festlegen der Referenz für ArrayList in VBA Schritt 3

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:

Ergebnis der Verwendung von ArrayList in VBA

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.