Kaj je VBA Array?
Matrika je definirana kot pomnilniška lokacija, ki lahko shrani več kot eno vrednost. Vse vrednosti morajo biti istega podatkovnega tipa. Recimo, da želite shraniti seznam svojih najljubših pijač v eno spremenljivko, za to lahko uporabite polje VBA.
Z uporabo matrike se lahko na iste vrednosti sklicujete z istim imenom. Za ločevanje jih lahko uporabite indeks ali indeks. Posamezne vrednosti so navedene kot elementi matrike Excel VBA. So sosednji od indeksa 0 do najvišje vrednosti indeksa.
Ta vadnica predvideva, da uporabljate Microsoft Excel različice 2013. Znanje še vedno velja tudi za druge različice programa Microsoft Excel.
V tej vadnici programiranja VBA boste izvedeli -
- Kakšne so prednosti nizov?
- Vrste nizov v VBA
- Kako uporabljati Array v Excelu VBA
- Testiranje naše aplikacije
Kakšne so prednosti nizov?
Sledi nekaj prednosti, ki jih ponuja funkcija matrike VBA
- Skupite logično povezane podatke - recimo, da želite shraniti seznam študentov. Uporabite lahko eno spremenljivko polja, ki ima ločene lokacije za kategorije študentov, npr. Vrt, osnovnošolsko, srednješolsko, srednješolsko itd.
- Polja olajšajo pisanje vzdrževalne kode. Za iste logično povezane podatke vam omogoča, da definirate eno spremenljivko, namesto da definirate več kot eno spremenljivko.
- Boljša zmogljivost - ko je matrika definirana, je hitreje pridobiti, razvrstiti in spremeniti podatke.
Vrste nizov v VBA
VBA podpira dve vrsti nizov in sicer;
- Statična - te vrste nizov imajo določeno vnaprej določeno število elementov, ki jih je mogoče shraniti. Velikosti podatkovnega tipa statičnega polja ni mogoče spremeniti. Te so uporabne, če želite delati z znanimi entitetami, kot so število dni v tednu, spol itd.
Na primer : Dim ArrayMonth (12) kot niz
- Dinamično - te vrste nizov nimajo vnaprej določenega števila elementov, ki jih je mogoče shraniti. Ti so uporabni pri delu z entitetami, ki jih ne morete vnaprej določiti.
Na primer : Dim ArrayMonth () kot varianta
Sintaksa za deklariranje nizov
Statična polja
Sintaksa za razglasitev STATIČNIH nizov je naslednja:
Dim arrayName (n) as datatype
TUKAJ,
Koda | Ukrepanje |
Dim podatkovni tip arrayName (n) |
|
Dinamični nizi
Sintaksa za deklariranje DYNAMIC nizov je naslednja:
Dim arrayName() as datatypeReDim arrayName(4)
TUKAJ,
Koda | Ukrepanje |
Dim podatkovni tip arrayName () |
|
ReDim arrayName (4) |
|
Dimenzije matrike
Matrika je lahko ena dimenzija, dve dimenziji ali večdimenzionalnost.
- Ena dimenzija : V tej dimenziji polje uporablja samo en indeks. Na primer, število ljudi vsake starosti.
- Dve dimenziji : V tej dimenziji matrika uporablja dva indeksa. Na primer, število učencev v vsakem razredu. Zahteva število razredov in število študentov v vsakem razredu
- Večrazsežnost : v tej dimenziji polje uporablja več kot dva indeksa. Na primer temperature podnevi. (30, 40, 20).
Kako uporabljati Array v Excelu VBA
Ustvarili bomo preprosto aplikacijo. Ta aplikacija zapolni Excelov list s podatki iz spremenljivke polja. V tem primeru VBA polja bomo naredili naslednje stvari.
- Ustvarite nov delovni zvezek Microsoft Excel in ga shranite kot Excelov delovni zvezek (* .xlsm)
- V delovni zvezek dodajte ukazni gumb
- Nastavite lastnosti imena in napisov ukaznega gumba
- Programiranje VBA, ki zapolni Excelov list
Naredite to vajo korak za korakom,
1. korak - ustvarite nov delovni zvezek
- Odprite Microsoft Excel
- Shranite nov delovni zvezek kot VBA Arrays.xlsm
2. korak - dodajte ukazni gumb
Opomba: V tem razdelku se domneva, da poznate postopek ustvarjanja vmesnika v Excelu. Če niste seznanjeni, preberite vadnico VBA Excel Form Control & ActiveX Control. Pokazalo vam bo, kako ustvarite vmesnik
- Na list dodajte ukazni gumb
- Lastnost imena nastavite na cmdLoadBeverage
- Lastnost napisa nastavite na Nalaganje pijač
Vaš GUI bi moral biti naslednji
3. korak - shranite datoteko
- Kliknite gumb Shrani kot
- Izberite Excelov delovni zvezek (* .xlsm), kot je prikazano na spodnji sliki
4. korak - Napišite kodo
Zdaj bomo napisali kodo za našo prijavo
- Z desno miškino tipko kliknite gumb Naloži pijače in izberite kodo pogleda
- V dogodek klika cmdLoadBeverage dodajte naslednjo kodo
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
TUKAJ,
Koda |
Ukrepanje |
Dim pijače (1 do 4) kot niz |
|
Pijače (1) = "Pepsi" |
|
List1.Cells (1, 1) .Value = "Moje najljubše pijače." |
|
List 1. Celice (2, 1). Vrednost = Pijače (1) |
|
Testiranje naše aplikacije
Izberite zavihek za razvijalce in se prepričajte, da je gumb za način oblikovanja izklopljen. Kazalnik je, da bo imel belo ozadje in ne barvnega (zelenkastega) ozadja. (Glej sliko spodaj)
Kliknite gumb Naloži pijače
Dobili boste naslednje rezultate
Prenesite Excel, ki vsebuje zgornjo kodo
Prenesite zgornjo kodo Excel
Povzetek
- Matrika je spremenljivka, ki lahko shrani več kot eno vrednost
- Excel VBA podpira statične in dinamične nize
- Polji olajšajo pisanje kode, ki jo je mogoče vzdrževati, v primerjavi z razglasitvijo veliko spremenljivk za podatke, ki so logično povezani.