VBA ArrayList (príklady) Ako vytvoriť ArrayList v programe Excel VBA?

Vo vba sme zabudovali kolekcie dátových typov, premenných funkcií a ďalších dôležitých tvrdení, ale podobne ako v tomto, máme zoznam polí vo VBA, v ktorom môže užívateľ upravovať a vkladať svoje vlastné kolekcie premenných a užívateľom definované funkcie do poľa, existujú určité kľúčové slová pre zoznam poľa, aby ste ho vytvorili.

Excel VBA ArrayList

VBA ArrayList je druh dátovej štruktúry, ktorú používame vo VBA na ukladanie údajov. ArrayList v programe Excel VBA je trieda používaná na vytvorenie poľa hodnôt. Toto, na rozdiel od tradičných polí, kde tieto polia majú pevnú dĺžku, ale zoznam polí žiadnu pevnú dĺžku nemá.

VAB ArrayList nie je súčasťou zoznamu VBA; je to skôr externá knižnica alebo objekt, ktorý musíme nastaviť ako referenciu skôr, ako k nej začneme pristupovať.

Polia vo VBA sú neoddeliteľnou súčasťou každého kódovacieho jazyka. Použitím polí v programe Excel môžeme ukladať údaje s jedným názvom premennej vyhlásením „dolnej a hornej hranice“.

Pri pravidelných poliach musíme rozhodnúť o dolnej hranici a hornej hranici poľa. Musíme sa rozhodnúť v dostatočnom predstihu v čase deklarovania premennej v prípade statických polí a v prípade dynamických polí musíme rozhodnúť o dĺžke poľa po vyhlásení poľa pomocou príkazu „ReDim“ v VBA.

Máme však ešte jednu možnosť, kde môžeme uložiť „N“ počet hodnôt bez deklarovania dolnej a hornej hranice. V tomto článku vám ukážeme túto možnosť, tj. „VBA ArrayList“.

Ak chcete nastaviť odkaz na objekt VBA ArrayList, postupujte podľa nasledujúcich krokov.

Krok 1: Prejdite do ponuky Nástroje> Referencie.

Krok 2: Pred vami sa zobrazí referenčné okno knižnice objektov. Vyberte možnosť „ mscorlib.dll.

Krok 3: Kliknite tiež na OK. Teraz môžeme vstúpiť do VBA ArrayList.

Príklady VBA ArrayList v programe Excel

Ďalej uvádzame príklady súboru Excel VBA ArrayList.

Príklad # 1 - Vytvorenie inštancie VBA ArrayList

Pretože Excel VBA ArrayList je externý objekt, musíme vytvoriť inštanciu, aby sme ju mohli začať používať. Ak chcete vytvoriť inštanciu, postupujte podľa nasledujúcich krokov.

Krok 1: Deklarujte premennú ako „ ArrayList“.

Kód:

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

Krok 2: Pretože je zoznam polí objekt, musíme vytvoriť novú inštanciu.

Kód:

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

Krok 3: Teraz môžeme ukladať hodnoty do premennej poľa pomocou metódy „Pridať“. Na obrázku nižšie som pridal tri hodnoty.

Kód:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= Nový ArrayList ArrayValues.Add "Dobrý deň" "ArrayValues.Add" Dobrá "" druhá hodnota ArrayValues.Add "Ráno" 'Tri hodnoty Koniec Sub

Teraz sme priradili tri hodnoty, ako zistíme, ktorá je prvá a ako ich môžeme zobraziť alebo použiť podľa našich potrieb.

Ak si pamätáte tradičný typ poľa, odkazujeme na prvú hodnotu poľa takto: „ArrayName (0)“

Rovnako tu môžeme použiť rovnakú techniku.

ArrayValue (0) = „Dobrý deň“
ArrayValue (1) = “Dobré”
ArrayValue (2) = „Ráno“

Poďme to ukázať v okne správy.

Kód:

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) & vbNewLes (ArrayValues. 1) & vbNewLine & ArrayValues ​​(2) Koncový sub

Teraz spustite kód pomocou klávesu F5 alebo manuálne, potom sa v okne správy VBA zobrazí „Hello“, „Good“ a „Morning“.

Takto môžeme pomocou Object Array List Object uložiť akýkoľvek počet hodnôt.

Príklad č. 2 - Ukladanie hodnôt do buniek pomocou VBA ArrayList

Pozrime sa na príklad ukladania priradených hodnôt k bunkám v pracovnom hárku. Teraz sa pozrite na nižšie uvedený kód VBA.

Kód:

Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Names of mobile MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Pridať "VIVO" MobileNames.Add "LG" Nastaviť MobilePrice = Nový 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 'Names of the mobile MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Pridať "VIVO" MobileNames.Add "LG" Nastaviť MobilePrice = Nový ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 k = 0 Pre i = 1 až 5 buniek (i, 1) .Hodnota = MobileNames (k) bunky (i, 2) .Hodnota = MobilePrice (k) k = k + 1 Ďalej i Koniec Sub

Keď spustíme kód ručne alebo pomocou klávesu F5, dostaneme výsledok uvedený nižšie.

Zaujímavé články...