Polia programu Excel VBA: Čo je, ako používať & Typy polí vo VBA

Obsah:

Anonim

Č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

  1. 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ď.
  2. 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.
  3. 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
  1. Deklaruje premennú poľa nazvanú arrayName s veľkosťou n a dátovým typom. Veľkosť sa vzťahuje na počet prvkov, ktoré môže pole uložiť.

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
  1. Deklaruje premennú poľa nazvanú arrayName bez určenia počtu prvkov
ReDim arrayName (4)
  1. Určuje veľkosť poľa po jeho definovaní.

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

  1. Otvorte program Microsoft Excel
  2. 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

  1. Pridajte príkazové tlačidlo do hárka
  1. Vlastnosť name nastavte na cmdLoadBeverages
  2. 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

  1. Kliknite na tlačidlo uložiť ako
  2. 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

  1. Pravým tlačidlom myši kliknite na tlačidlo Načítať nápoje a vyberte zobraziť kód
  2. 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

  • Deklaruje premennú poľa s názvom Nápoje. Prvý index poľa je 1 a posledný index poľa je 4.

Nápoje (1) = "Pepsi"

  • Priradí hodnotu Pepsi prvému prvku poľa. Druhý podobný kód robí to isté pre ostatné prvky v poli.

Sheet1.Cells (1, 1) .Value = "Moje obľúbené nápoje."

  • Zapíše hodnotu Moje obľúbené nápoje na bunkovú adresu A1. Hárok1 odkazuje na hárok a bunky (1,1) odkazujú na riadok číslo 1 a stĺpec 1 (B)

Hárok 1. Bunky (2, 1). Hodnota = Nápoje (1)

  • Zapíše hodnotu prvku poľa s indexom 1 do riadku číslo dva v stĺpci 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

  1. Pole je premenná schopná uložiť viac ako jednu hodnotu
  2. Excel VBA podporuje statické a dynamické polia
  3. 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.