VBA tömblista (példák) - ArrayList létrehozása az Excel VBA-ban?

Tartalomjegyzék

Az vba-ban adattípusok, függvényváltozók és más fontos utasítások gyűjteményeit építettük be, de ehhez hasonlóan van egy tömblista a VBA-ban, amelyben a felhasználó módosíthatja és egy tömbbe helyezheti a változók saját gyűjteményeit és a felhasználó által definiált függvényeket, vannak bizonyos kulcsok a tömblista tervezéséhez.

Excel VBA tömblista

A VBA ArrayList egyfajta adatstruktúra, amelyet a VBA-ban használunk az adatok tárolására. Az Excel VBA ArrayList egy osztály, amelyet értéktömb létrehozására használnak. Ez, ellentétben a hagyományos tömbökkel, ahol ezeknek a tömböknek fix hosszúságúak, de a tömblista nem rögzített hosszúságú.

A VAB ArrayList nem része a VBA listának; ez inkább egy külső könyvtár vagy objektum, amelyhez meg kell adnunk a referenciát, mielőtt elkezdenénk elérni azt.

A VBA tömbök minden kódoló nyelv szerves részét képezik. Az excel tömbjeinek használatával egyetlen változónévvel tárolhatunk adatokat az „alsó és felső határ” deklarálásával.

A rendszeres tömbökkel el kell döntenünk a tömb alsó és felső határát. A változó deklarálásakor a statikus tömbök esetében jó előre el kell döntenünk, a dinamikus tömbök esetében pedig a tömb deklarálása után kell eldönteni a tömb hosszát a „ReDim” utasítás használatával. VBA.

Van azonban még egy lehetőségünk, ahol az alsó és felső határ deklarálása nélkül tárolhatjuk az „N” értékek számát. Ebben a cikkben megmutatjuk az opciót, azaz a „VBA ArrayList” -t.

A VBA ArrayList objektumra való hivatkozás beállításához kövesse az alábbi lépéseket.

1. lépés: Lépjen az Eszközök> Hivatkozások elemre.

2. lépés: Az objektumkönyvtár referencia ablaka megjelenik előtted. Válassza ki az „ mscorlib.dll.

3. lépés: Kattintson az OK gombra is. Most hozzáférhetünk a VBA ArrayList-hez.

Példák a VBA ArrayList-re az Excel-ben

Az alábbiakban bemutatjuk az Excel VBA ArrayList példáit.

1. példa - VBA ArrayList példány létrehozása

Mivel az Excel VBA ArrayList egy külső objektum, létre kell hoznunk egy példányt ennek használatához. Példány létrehozásához kövesse az alábbi lépéseket.

1. lépés: Nyújtsa be a változót „ ArrayList-nek.

Kód:

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

2. lépés: Mivel a tömblista objektum, létre kell hoznunk egy új példányt.

Kód:

Sub ArrayList_Example1 () Dim ArrayValues ​​mint ArrayList Set ArrayValues ​​= Új ArrayList End Sub

3. lépés: Mostantól folyamatosan tárolhatjuk az értékeket a tömb változóban az „Add” módszer segítségével. Az alábbi képen három értéket adtam hozzá.

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 End Sub

Most három értéket rendeltünk hozzá, hogyan azonosíthatjuk, melyik az első, és hogyan tudjuk megjeleníteni az értékeket, vagy felhasználni az igényeinkhez.

Ha emlékszel a hagyományos tömbtípusra, akkor az első tömbértékre hivatkozunk, mint ez a „tömbnév (0)”

Hasonlóképpen itt is ugyanazt a technikát használhatjuk.

ArrayValue (0) = “Hello”
ArrayValue (1) = „Jó”
ArrayValue (2) = „Reggel”

Hadd mutassa ezt az üzenet mezőben.

Kód:

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

Most futtassa a kódot az F5 billentyűvel vagy manuálisan, majd a VBA üzenetmezőben a „Hello”, „Good” és „Morning” üzeneteket fogjuk látni.

Így tetszőleges számú értéket tárolhatunk a tömblista objektummal.

2. példa - Értékek tárolása a cellákban a VBA ArrayList használatával

Lássuk azt a példát, amikor a hozzárendelt értékeket a munkalap celláiba tároljuk. Most nézze meg az alábbi VBA kódot.

Kód:

Sub ArrayList_Example2 () Dim MobileNames as ArrayList, MobilePrice as ArrayList Dim i as Integer Dim k As Integer Set MobileNames = New ArrayList 'Mobile mobileneves. Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Add hozzá a "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 'Mobile mobileneves. Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Add "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 Add i = 1 - 5 celláig (i, 1) .Value = MobileNames (k) Cellák (i, 2). Value = MobilePrice (k) k = k + 1 Következő i End Sub

Amikor a kódot manuálisan vagy az F5 billentyű segítségével futtatjuk, az alábbi eredményt kapjuk.

érdekes cikkek...