VBA ArrayList (primjeri) - Kako stvoriti ArrayList u programu Excel VBA?

U vba smo ugradili zbirke tipova podataka, varijabli funkcija i drugih važnih izjava, ali slično ovome imamo popis nizova u VBA u kojem korisnik može modificirati i staviti vlastite kolekcije varijabli i korisnički definirane funkcije u niz, postoje određene ključne riječi za popis polja za njegovo oblikovanje.

Excel VBA ArrayList

VBA ArrayList je vrsta strukture podataka koju koristimo u VBA za pohranu podataka. ArrayList u programu Excel VBA je klasa koja se koristi za stvaranje niza vrijednosti. To je za razliku od tradicionalnih nizova, gdje ti nizovi imaju fiksnu duljinu, ali popis nizova nema fiksnu duljinu.

VAB ArrayList nije dio VBA popisa; nego je to vanjska knjižnica ili objekt kojem moramo postaviti referencu prije nego što joj pristupimo.

Nizovi u VBA sastavni su dio bilo kojeg jezika kodiranja. Korištenjem nizova u Excelu možemo pohraniti podatke s jednim imenom varijable deklarirajući "donju i gornju granicu".

Uz redovite nizove moramo odrediti donju i gornju granicu niza. Moramo odlučiti unaprijed u vrijeme deklariranja varijable u slučaju statičkih nizova, a u slučaju dinamičkih nizova, duljinu niza moramo odrediti nakon deklariranja niza uporabom izjave "ReDim" u VBA.

Međutim, imamo još jednu opciju u kojoj možemo pohraniti "N" broj vrijednosti bez deklariranja donje i gornje granice. U ovom ćemo vam članku pokazati o toj opciji, tj. "VBA ArrayList."

Da biste postavili referencu na objekt VBA ArrayList, slijedite korake u nastavku.

Korak 1: Idite na Alati> Reference.

Korak 2: Referentni prozor biblioteke objekata pojavit će se ispred vas. Odaberite opciju “ mscorlib.dll. "

Korak 3: Kliknite i U redu. Sada možemo pristupiti VBA ArrayListu.

Primjeri VBA ArrayList u Excelu

Ispod su primjeri Excel VBA ArrayList.

Primjer # 1 - Stvaranje instance VBA ArrayList

Budući da je Excel VBA ArrayList vanjski objekt, moramo stvoriti instancu da bismo ga počeli koristiti. Da biste stvorili instancu, slijedite korake u nastavku.

Korak 1: Proglasite varijablu kao " ArrayList".

Kodirati:

Sub ArrayList_Example1 () Dim ArrayValues ​​kao ArrayList End Sub

Korak 2: Budući da je Popis nizova objekt, moramo stvoriti novu instancu.

Kodirati:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList End Sub

Korak 3: Sada možemo nastaviti pohranjivati ​​vrijednosti u varijablu niza pomoću metode "Dodaj". Na donjoj slici dodao sam tri vrijednosti.

Kodirati:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList ArrayValues.Add "Hello" 'First Value ArrayValues.Add "Good"' Second Value ArrayValues.Add "Morning" 'Three Value End Sub

Sada smo dodijelili tri vrijednosti, kako prepoznati koja je prva i kako možemo prikazati vrijednosti ili ih koristiti prema svojim potrebama.

Ako se sjećate tradicionalnog tipa niza, uputit ćemo prvu vrijednost niza poput ove "ArrayName (0)"

Slično tome, i tu možemo koristiti istu tehniku.

ArrayValue (0) = "Pozdrav"
ArrayValue (1) = "Dobro"
ArrayValue (2) = "Jutro"

Pokažite ovo u okviru za poruku.

Kodirati:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList ArrayValues.Add "Hello" 'First Value ArrayValues.Add "Good"' Second Value ArrayValues.Add "Morning" 'Three Value MsgBox ArrayValues ​​(0) & vbNVVes (&) 1) & vbNewLine & ArrayValues ​​(2) Kraj Sub

Sada pokrenite kôd pomoću tipke F5 ili ručno, a zatim ćemo u okviru VBA poruke vidjeti "Zdravo", "Dobro" i "Jutro".

Ovako, s objektom popisa polja možemo pohraniti bilo koji broj vrijednosti.

Primjer # 2 - Pohranjivanje vrijednosti u ćelije pomoću VBA ArrayList

Pogledajmo primjer spremanja dodijeljenih vrijednosti u ćelije na radnom listu. Sada pogledajte donji VBA kod.

Kodirati:

Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Imena mobilnih Imena.Dodajte "Redmi" MobileNames.Dodajte "Samsung" MobileNames.Dodajte "Oppo" MobileNames. Dodajte "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

With two array lists, I have stored Names of the Mobile and Prices of the Mobile. Now we need to insert these values to the worksheet for this. We need to use loops. The below loop will do the job for me.

Below is the Overall code to store values to the worksheet.

Code:

Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Imena mobilnih imena.Dodajte "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Dodajte "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 Za i = 1 do 5 ćelija (i, 1) .Vrijednost = MobileNames (k) Ćelije (i, 2) .Vrijednost = MobilePrice (k) k = k + 1 Sljedeće i Kraj Sub

Kad tada kôd pokrenemo ručno ili pomoću tipke F5, dobit ćemo donji rezultat.

Zanimljivi članci...