Mi az a VBA tömb?
A tömböt olyan memóriahelyként definiálják, amely egynél több érték tárolására képes. Az értékeknek ugyanannak az adattípusnak kell lenniük. Tegyük fel, hogy a kedvenc italok listáját egyetlen változóban szeretné tárolni, ehhez a VBA tömböt használhatja.
Egy tömb használatával a kapcsolódó értékekre ugyanazon a néven hivatkozhat. Az index vagy az index segítségével megkülönböztetheti őket. Az egyes értékeket az Excel VBA tömb elemeinek nevezik. A 0 indextől a legmagasabb indexértékig határosak.
Ez az oktatóanyag azt feltételezi, hogy a Microsoft Excel 2013-as verzióját használja. A tudás továbbra is érvényes a Microsoft Excel más verzióira is.
Ebben a VBA programozási oktatóanyagban
- Melyek a tömbök előnyei?
- Tömbök típusai a VBA-ban
- Az Array használata az Excel VBA-ban
- Alkalmazásunk tesztelése
Melyek a tömbök előnyei?
Az alábbiakban bemutatjuk a VBA tömbfunkció néhány előnyét
- Csoportosítsa össze a logikailag kapcsolódó adatokat - tegyük fel, hogy tárolni szeretné a hallgatók listáját. Használhat egyetlen tömb változót, amelynek külön helyei vannak a tanulói kategóriákhoz, pl. Kert, általános iskola, középiskola, középiskola stb.
- A tömbök megkönnyítik a karbantartható kód írását. Ugyanazokhoz a logikailag kapcsolódó adatokhoz lehetővé teszi, hogy egynél több változó meghatározása helyett egyetlen változót definiáljon.
- Jobb teljesítmény - egy tömb definiálása után gyorsabb az adatok lekérése, rendezése és módosítása.
Tömbök típusai a VBA-ban
A VBA kétféle tömböt támogat, nevezetesen;
- Statikus - Az ilyen típusú tömböknek előre meghatározott számú rögzített elem tárolható. Nem lehet megváltoztatni a statikus tömb adattípusának méretét. Ezek akkor hasznosak, ha ismert entitásokkal szeretne dolgozni, például egy hét napjainak száma, neme stb.
Például : Dim ArrayMonth (12) stringként
- Dinamikus - Az ilyen típusú tömböknek nincs rögzített, előre meghatározott számú tárolható elemük. Ezek akkor hasznosak, ha olyan entitásokkal dolgozunk, amelyek számát nem lehet előre meghatározni.
Például : Dim ArrayMonth () mint variáns
Szintaxis a tömbök deklarálásához
Statikus tömbök
A STATIC tömbök deklarálásának szintaxisa a következő:
Dim arrayName (n) as datatype
ITT,
Kód | Akció |
Dim arrayName (n) adattípus |
|
Dinamikus tömbök
A DYNAMIC tömbök deklarálásának szintaxisa a következő:
Dim arrayName() as datatypeReDim arrayName(4)
ITT,
Kód | Akció |
Dim arrayName () adattípus |
|
ReDim arrayName (4) |
|
Tömb méretei
Egy tömb lehet egy dimenzió, két dimenzió vagy többdimenziós.
- Egy dimenzió : Ebben a dimenzióban a tömb csak egy indexet használ. Például minden korosztályból számos ember.
- Két dimenzió : Ebben a dimenzióban a tömb két indexet használ. Például minden osztályban számos tanuló. Megköveteli az osztályok számát és az egyes osztályok tanulóinak számát
- Többdimenziós : Ebben a dimenzióban a tömb kettőnél több indexet használ. Például a nappali hőmérséklet. (30, 40, 20).
Az Array használata az Excel VBA-ban
Létrehozunk egy egyszerű alkalmazást. Ez az alkalmazás feltölti az Excel lapot egy tömb változó adataival. Ebben a VBA tömb példában a következő dolgokat fogjuk megtenni.
- Hozzon létre egy új Microsoft Excel munkafüzetet, és mentse el Excel makró-engedélyezett munkafüzetként (* .xlsm)
- Vegyen fel egy parancsgombot a munkafüzetbe
- Állítsa be a parancs gomb nevét és felirat tulajdonságait
- Az Excel lapot kitöltő VBA programozása
Hajtsa végre ezt a gyakorlatot lépésről lépésre,
1. lépés - Hozzon létre egy új munkafüzetet
- Nyissa meg a Microsoft Excel alkalmazást
- Mentse az új munkafüzetet VBA Arrays.xlsm néven
2. lépés - Adjon hozzá egy parancsgombot
Megjegyzés: Ez a szakasz feltételezi, hogy ismeri az interfész létrehozásának folyamatát az excelben. Ha még nem ismeri, olvassa el a VBA Excel Form Control & ActiveX Control oktatóanyagot. Megmutatja, hogyan kell létrehozni a felületet
- Adjon hozzá egy parancsgombot a laphoz
- Állítsa a név tulajdonságot cmdLoadBeverages értékre
- Állítsa a felirat tulajdonságát az Italok betöltése elemre
A felhasználói felületének most a következőknek kell lennie
3. lépés - Mentse a fájlt
- Kattintson a Mentés másként gombra
- Válassza az Excel makróval engedélyezett munkafüzetet (* .xlsm) az alábbi képen látható módon
4. lépés - Írja be a kódot
Most megírjuk az alkalmazásunk kódját
- Kattintson a jobb gombbal az Italok betöltése gombra, és válassza ki a nézet kódját
- Adja hozzá a következő kódot a cmdLoadBeverages kattintási eseményéhez
Private Sub cmdLoadBeverages_Click()Dim Drinks(1 To 4) As StringDrinks(1) = "Pepsi"Drinks(2) = "Coke"Drinks(3) = "Fanta"Drinks(4) = "Juice"Sheet1.Cells(1, 1).Value = "My Favorite Beverages"Sheet1.Cells(2, 1).Value = Drinks(1)Sheet1.Cells(3, 1).Value = Drinks(2)Sheet1.Cells(4, 1).Value = Drinks(3)Sheet1.Cells(5, 1).Value = Drinks(4)End Sub
ITT,
Kód |
Akció |
Halk italok (1–4) húrként |
|
Italok (1) = "Pepsi" |
|
Sheet1.Cells (1, 1) .Value = "Kedvenc italaim". |
|
Sheet1.Cells (2, 1). Érték = italok (1) |
|
Alkalmazásunk tesztelése
Válassza a fejlesztő fület, és ellenőrizze, hogy a Tervezési mód gomb ki van-e kapcsolva. A jelző szerint fehér és nem színes (zöldes) háttérrel rendelkezik. (Lásd az alábbi képet)
Kattintson az Italok betöltése gombra
A következő eredményeket kapja
Töltse le a fenti kódot tartalmazó Excel programot
Töltse le a fenti Excel kódot
Összegzés
- A tömb egy változó, amely több értéket is képes tárolni
- Az Excel VBA támogatja a statikus és dinamikus tömböket
- A tömbök megkönnyítik a karbantartható kódok írását, összehasonlítva a sok változó deklarálásával a logikailag összefüggő adatoknál.