In vba haben wir Sammlungen von Datentypen, Funktionsvariablen und anderen wichtigen Anweisungen eingebaut, aber ähnlich haben wir eine Array-Liste in VBA, in der ein Benutzer eigene Sammlungen von Variablen und benutzerdefinierten Funktionen in einem Array ändern und einfügen kann Schlüsselwörter für die Array-Liste, um sie zu entwerfen.
Excel VBA ArrayList
VBA ArrayList ist eine Art Datenstruktur, die wir in VBA zum Speichern der Daten verwenden. ArrayList in Excel VBA ist eine Klasse, mit der ein Array von Werten erstellt wird. Dies ist anders als bei herkömmlichen Arrays, bei denen diese Arrays eine feste Länge haben, die Array-Liste jedoch keine feste Länge.
VAB ArrayList ist nicht Teil der VBA-Liste, sondern eine externe Bibliothek oder ein externes Objekt, für das wir die Referenz festlegen müssen, bevor wir darauf zugreifen können.
Arrays in VBA sind ein wesentlicher Bestandteil jeder Codierungssprache. Durch die Verwendung von Arrays in Excel können wir Daten mit einem einzigen Variablennamen speichern, indem wir die „Untergrenze und Obergrenze“ deklarieren.
Bei regulären Arrays müssen wir die Untergrenze und die Obergrenze des Arrays festlegen, die wir zum Zeitpunkt der Deklaration der Variablen bei statischen Arrays und bei dynamischen Arrays und bei dynamischen Arrays im Voraus festlegen müssen Array nach dem Deklarieren des Arrays mithilfe der Anweisung "ReDim" in VBA.
Wir haben jedoch noch eine Option, bei der wir die Anzahl der Werte "N" speichern können, ohne die Untergrenze und die Obergrenze anzugeben. In diesem Artikel zeigen wir Ihnen diese Option, z. B. "VBA ArrayList".
Führen Sie die folgenden Schritte aus, um den Verweis auf das VBA ArrayList-Objekt festzulegen.
Schritt 1: Gehen Sie zu Extras> Referenzen
Schritt 2: Das Referenzfenster der Objektbibliothek wird vor Ihnen angezeigt. Wählen Sie die Option " mscorlib.dll "
Schritt 3: Klicken Sie auch auf OK. Jetzt können wir auf die VBA ArrayList zugreifen.
Beispiele für VBA ArrayList in Excel
Unten finden Sie Beispiele für Excel VBA ArrayList.
Sie können diese VBA ArrayList Excel-Vorlage hier herunterladen - VBA ArrayList Excel-VorlageBeispiel 1 - Instanz von VBA ArrayList erstellen
Da Excel VBA ArrayList ein externes Objekt ist, müssen wir eine Instanz erstellen, um dieses verwenden zu können. Führen Sie die folgenden Schritte aus, um eine Instanz zu erstellen.
Schritt 1: Deklarieren Sie die Variable als " ArrayList ".
Code:
Sub ArrayList_Example1 () Dim ArrayValues As ArrayList End Sub
Schritt 2: Da Array List ein Objekt ist, müssen wir eine neue Instanz erstellen.
Code:
Sub ArrayList_Example1 () ArrayValues als ArrayList dimmen Set ArrayValues = New ArrayList End Sub
Schritt 3: Jetzt können wir weiterhin Werte in der Array-Variablen speichern, indem wir die Methode „Hinzufügen“ verwenden. Im folgenden Bild habe ich drei Werte hinzugefügt.
Code:
Sub ArrayList_Example1 () ArrayValues als ArrayList dimmen Set ArrayValues = New ArrayList ArrayValues.Add "Hello" 'Erster Wert ArrayValues.Add "Good"' Zweiter Wert ArrayValues.Add "Morning" 'Three Value End Sub
Jetzt haben wir drei Werte zugewiesen: Wie identifizieren wir den ersten und wie können wir die Werte anzeigen oder für unsere Bedürfnisse verwenden?
Wenn Sie sich an einen herkömmlichen Array-Typ erinnern, verweisen wir auf den ersten Array-Wert wie folgt: "ArrayName (0)"
In ähnlicher Weise können wir auch hier dieselbe Technik anwenden.
ArrayValue (0) = "Hallo"
ArrayValue (1) = "Gut"
ArrayValue (2) = "Morgen"
Lassen Sie dies im Meldungsfeld anzeigen.
Code:
Sub ArrayList_Example1 () ArrayValues als ArrayList-Set festlegen ArrayValues = New ArrayList ArrayValues.Add "Hello" 'Erster Wert ArrayValues.Add "Good"' Zweiter Wert ArrayValues.Add "Morning" 'Drei Werte MsgBox ArrayValues (0) & vbNewLine & ArrayValues ( 1) & vbNewLine & ArrayValues (2) End Sub
Führen Sie nun den Code mit der Taste F5 oder manuell aus. Im VBA-Meldungsfeld werden "Hallo", "Gut" und "Morgen" angezeigt.
Auf diese Weise können wir mit Array List Object eine beliebige Anzahl von Werten speichern.
Beispiel 2 - Speichern von Werten in Zellen mithilfe von VBA ArrayList
Sehen wir uns das Beispiel zum Speichern der zugewiesenen Werte in den Zellen im Arbeitsblatt an. Schauen Sie sich nun den folgenden VBA-Code an.
Code:
Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = Neue ArrayList-Namen der mobilen MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Hinzufügen von "VIVO" MobileNames.Add "LG" Set MobilePrice = New ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 End Sub
Mit zwei Array-Listen habe ich Namen des Handys und Preise des Handys gespeichert. Jetzt müssen wir diese Werte in das Arbeitsblatt einfügen, dafür müssen wir Schleifen verwenden. Die folgende Schleife erledigt den Job für mich.
Unten finden Sie den Gesamtcode zum Speichern von Werten im Arbeitsblatt.
Code:
Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = Neue ArrayList-Namen der mobilen MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Hinzufügen von "VIVO" MobileNames.Add "LG" Set MobilePrice = New ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 k = 0 Für i = 1 bis 5 Zellen (i, 1) .Value = MobileNames (k) Cells (i, 2) .Value = MobilePrice (k) k = k + 1 Next i End Sub
Wenn wir den Code manuell oder mit der Taste F5 ausführen, erhalten wir das folgende Ergebnis.