Čo je pole VBA?
Pole je definované ako pamäťové miesto, do ktorého je možné uložiť viac ako jednu hodnotu. Všetky hodnoty musia byť rovnakého dátového typu. Povedzme, že chcete uložiť zoznam svojich obľúbených nápojov do jednej premennej, môžete na to použiť pole VBA.
Použitím poľa môžete odkazovať na súvisiace hodnoty pod rovnakým názvom. Na ich rozlíšenie môžete použiť index alebo dolný index. Jednotlivé hodnoty sa označujú ako prvky poľa Excel VBA. Súvisia od indexu 0 po najvyššiu hodnotu indexu.
Tento výukový program predpokladá, že používate program Microsoft Excel verzie 2013. Znalosti stále platia aj pre iné verzie programu Microsoft Excel.
V tomto výučbe programovania VBA sa naučíte -
- Aké sú výhody polí?
- Typy polí vo VBA
- Ako používať pole v programe Excel VBA
- Testovanie našej aplikácie
Aké sú výhody polí?
Nasleduje niekoľko výhod, ktoré ponúka funkcia poľa VBA
- Zoskupte logicky súvisiace údaje dohromady - povedzme, že chcete uložiť zoznam študentov. Môžete použiť jednu premennú poľa, ktorá má samostatné umiestnenia pre kategórie študentov, napríklad škôlku, základnú, strednú, strednú školu atď.
- Polia uľahčujú písanie udržovateľného kódu. Pre rovnaké logicky súvisiace údaje vám umožňuje definovať jednu premennú namiesto definovania viac ako jednej premennej.
- Lepší výkon - po definovaní poľa je rýchlejšie načítať, triediť a upravovať údaje.
Typy polí vo VBA
VBA podporuje dva typy polí, konkrétne;
- Statické - tieto typy polí majú pevný vopred určený počet prvkov, ktoré je možné uložiť. Jeden nemôže zmeniť veľkosť dátového typu statického poľa. Sú užitočné, keď chcete pracovať so známymi entitami, ako sú počet dní v týždni, pohlavie atď.
Napríklad : Dim ArrayMonth (12) ako reťazec
- Dynamické - tieto typy polí nemajú pevný vopred určený počet prvkov, ktoré je možné uložiť. Sú užitočné pri práci s entitami, ktorých počet nemôžete vopred určiť.
Napríklad : Dim ArrayMonth () ako variant
Syntax na vyhlásenie polí
Statické polia
Syntax pre deklarovanie STATICKÝCH polí je nasledovná:
Dim arrayName (n) as datatype
TU,
Zákonníka | Akcia |
Dim pole Názov (n) údajový typ |
|
Dynamické polia
Syntax pre deklarovanie DYNAMICKÝCH polí je nasledovná:
Dim arrayName() as datatypeReDim arrayName(4)
TU,
Zákonníka | Akcia |
Dim DimName () datový typ |
|
ReDim arrayName (4) |
|
Rozmery poľa
Pole môže byť jednorozmerné, dvojrozmerné alebo viacrozmerné.
- Jedna dimenzia : V tejto dimenzii pole používa iba jeden index. Napríklad počet ľudí každého veku.
- Dve dimenzie : V tejto dimenzii pole používa dva indexy. Napríklad počet študentov v každej triede. Vyžaduje počet tried a počet študentov v každej triede
- Viacrozmerné : V tejto dimenzii pole používa viac ako dva indexy. Napríklad teploty cez deň. (30, 40, 20).
Ako používať pole v programe Excel VBA
Vytvoríme jednoduchú aplikáciu. Táto aplikácia naplní hárok programu Excel údajmi z premennej poľa. V tomto príklade VBA Array budeme robiť nasledujúce veci.
- Vytvorte nový zošit Microsoft Excel a uložte ho ako zošit Excel podporujúci makra (* .xlsm)
- Pridajte do zošita príkazové tlačidlo
- Nastavte názov a vlastnosti titulkov príkazového tlačidla
- Programovanie VBA, ktorý vypĺňa hárok programu Excel
Poďme robiť toto cvičenie krok za krokom,
Krok 1 - Vytvorte nový zošit
- Otvorte program Microsoft Excel
- Uložte nový zošit ako VBA Arrays.xlsm
Krok 2 - Pridajte príkazové tlačidlo
Poznámka: Táto časť predpokladá, že ste oboznámení s procesom vytvárania rozhrania v programe Excel. Ak nie ste oboznámení, prečítajte si návod VBA Excel Form Control & ActiveX Control. Ukáže vám, ako vytvoriť rozhranie
- Pridajte príkazové tlačidlo do hárka
- Vlastnosť name nastavte na cmdLoadBeverages
- Vlastnosť titulku nastavte na Načítať nápoje
Vaše grafické používateľské rozhranie by teraz malo byť nasledovné
Krok 3 - Uložte súbor
- Kliknite na tlačidlo uložiť ako
- Vyberte si zošit typu Excel s povoleným makrom (* .xlsm), ako je znázornené na obrázku nižšie
Krok 4 - napíšte kód
Teraz napíšeme kód našej aplikácie
- Pravým tlačidlom myši kliknite na tlačidlo Načítať nápoje a vyberte zobraziť kód
- Pridajte nasledujúci kód do udalosti kliknutia cmdLoadBeverages
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
TU,
Zákonníka |
Akcia |
Tlmené nápoje (1 až 4) ako struna |
|
Nápoje (1) = "Pepsi" |
|
Sheet1.Cells (1, 1) .Value = "Moje obľúbené nápoje." |
|
Hárok 1. Bunky (2, 1). Hodnota = Nápoje (1) |
|
Testovanie našej aplikácie
Vyberte kartu vývojára a uistite sa, že je tlačidlo návrhového režimu vypnuté. Indikátor je, že bude mať biele pozadie a nie farebné (nazelenalé) pozadie. (Pozri obrázok nižšie)
Kliknite na tlačidlo Načítať nápoje
Získate nasledujúce výsledky
Stiahnite si Excel obsahujúci vyššie uvedený kód
Stiahnite si vyššie uvedený kód Excel
Zhrnutie
- Pole je premenná schopná uložiť viac ako jednu hodnotu
- Excel VBA podporuje statické a dynamické polia
- Polia uľahčujú zápis udržovateľného kódu v porovnaní s deklarovaním množstva premenných pre údaje, ktoré logicky súvisia.