VBA ArrayList (eksempler) - Sådan oprettes ArrayList i Excel VBA?

Indholdsfortegnelse

I vba har vi indbygget samlinger af datatyper, funktionsvariabler og andre vigtige udsagn, men i lighed med dette har vi matrixliste i VBA, hvor en bruger kan ændre og placere egne samlinger af variabler og brugerdefinerede funktioner i en matrix, der er visse nøgleord til matrixlisten for at designe den.

Excel VBA ArrayList

VBA ArrayList er en slags datastruktur, vi bruger i VBA til at gemme dataene. ArrayList i Excel VBA er en klasse, der bruges til at oprette en række værdier. Dette i modsætning til traditionelle arrays, hvor disse arrays har en fast længde, men Array List ikke har nogen fast længde.

VAB ArrayList er ikke en del af VBA-listen; snarere er det et eksternt bibliotek eller objekt, som vi har brug for for at indstille referencen, inden vi begynder at få adgang til det.

Arrays i VBA er en integreret del af ethvert kodningssprog. Ved at bruge arrays i excel kan vi gemme data med et enkelt variabelnavn ved at erklære den "nedre grænse & øvre grænse."

Med regelmæssige arrays skal vi bestemme den nedre grænse og øvre grænse for arrayet. Vi er nødt til at beslutte i god tid på tidspunktet for deklarering af variablen i tilfælde af statiske arrays, og i tilfælde af dynamiske arrays er vi nødt til at bestemme længden af ​​arrayet efter at have erklæret arrayet ved hjælp af "ReDim" -sætningen i VBA.

Vi har dog en yderligere mulighed, hvor vi kan gemme "N" antallet af værdier uden at erklære den nedre grænse og øvre grænse. I denne artikel vil vi vise dig om denne mulighed, dvs. "VBA ArrayList."

For at indstille henvisningen til VBA ArrayList-objekt, skal du følge nedenstående trin.

Trin 1: Gå til Værktøjer> Referencer.

Trin 2: Referencevindue til objektbibliotek vises foran dig. Vælg indstillingen “ mscorlib.dll.

Trin 3: Klik også på OK. Nu kan vi få adgang til VBA ArrayList.

Eksempler på VBA ArrayList i Excel

Nedenfor er eksemplerne på Excel VBA ArrayList.

Eksempel # 1 - Opret forekomst af VBA ArrayList

Da Excel VBA ArrayList er et eksternt objekt, skal vi oprette en instans for at begynde at bruge dette. Følg nedenstående trin for at oprette en forekomst.

Trin 1: Erklær variablen som " ArrayList."

Kode:

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

Trin 2: Da Array List er et objekt, er vi nødt til at oprette en ny instans.

Kode:

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

Trin 3: Nu kan vi gemme værdier til arrayvariablen ved hjælp af "Tilføj" -metoden. I nedenstående billede har jeg tilføjet tre værdier.

Kode:

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

Nu har vi tildelt tre værdier, hvordan identificerer vi, hvilken der er den første, og hvordan kan vi vise værdierne eller bruge dem til vores behov.

Hvis du husker traditionel matrixtype, henviser vi den første matrixværdi som denne "ArrayName (0)"

På samme måde kan vi også bruge den samme teknik her.

ArrayValue (0) = “Hej”
ArrayValue (1) = “God”
ArrayValue (2) = “Morgen”

Lad dette vises i meddelelsesfeltet.

Kode:

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

Kør nu koden ved hjælp af F5-tasten eller manuelt, så ser vi "Hej", "Godt" og "Morgen" i VBA-meddelelsesfeltet.

På denne måde kan vi gemme et hvilket som helst antal værdier med Array List Object.

Eksempel 2 - Gem værdier til celler ved hjælp af VBA ArrayList

Lad os se eksemplet på lagring af de tildelte værdier til cellerne i regnearket. Se nu på nedenstående VBA-kode.

Kode:

Sub ArrayList_Example2 () Dim MobileNames Som ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Navne på mobile MobileNames. Tilføj "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Tilføj "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 'Navne på mobile MobileNames. Tilføj "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Tilføj "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 For i = 1 til 5 celler (i, 1) .Værdi = MobileNames (k) Celler (i, 2) .Værdi = MobilePrice (k) k = k + 1 Næste i End Sub

Når vi kører koden manuelt eller bruger F5-tasten, får vi nedenstående resultat.

Interessante artikler...