Kas yra VBA masyvas?
Masyvas apibrėžiamas kaip atminties vieta, galinti išsaugoti daugiau nei vieną vertę. Visos vertės turi būti to paties tipo. Tarkime, kad norite išsaugoti mėgstamų gėrimų sąrašą viename kintamajame, tam galite naudoti VBA masyvą.
Naudodami masyvą, galite nurodyti susijusias reikšmes tuo pačiu pavadinimu. Norėdami juos atskirti, galite naudoti indeksą arba indeksą. Individualios vertės nurodomos kaip „Excel VBA“ masyvo elementai. Jie yra gretimi nuo 0 indekso iki didžiausios indekso vertės.
Šioje pamokoje daroma prielaida, kad naudojate „Microsoft Excel 2013“ versiją. Žinios vis tiek taikomos ir kitoms „Microsoft Excel“ versijoms.
Šioje VBA programavimo pamokoje sužinosite
- Kokie yra masyvų pranašumai?
- Masyvų tipai VBA
- Kaip naudoti masyvą „Excel VBA“
- Testuojama mūsų programa
Kokie yra masyvų pranašumai?
Toliau pateikiami keli VBA masyvo funkcijos teikiami pranašumai
- Grupuokite logiškai susijusius duomenis kartu - tarkime, kad norite išsaugoti studentų sąrašą. Galite naudoti vieną masyvo kintamąjį, kuris turi atskiras mokinių kategorijų vietas, pvz., Sodą, pradinę, vidurinę, vidurinę mokyklą ir kt.
- Masyvai leidžia lengvai rašyti prižiūrimą kodą. Tiems patiems logiškai susijusiems duomenims jis leidžia apibrėžti vieną kintamąjį, užuot apibrėžus daugiau nei vieną kintamąjį.
- Geresnis našumas - kai bus apibrėžtas masyvas, duomenis bus greičiau nuskaityti, rūšiuoti ir modifikuoti.
Masyvų tipai VBA
VBA palaiko dviejų tipų masyvus, būtent;
- Statinis - tokio tipo masyvuose yra nustatytas iš anksto nustatytas elementų, kuriuos galima saugoti, skaičius. Negalima pakeisti statinio masyvo duomenų tipo dydžio. Tai naudinga, kai norite dirbti su žinomais subjektais, pvz., Dienų skaičiumi per savaitę, lytimi ir kt.
Pavyzdžiui : „Dim ArrayMonth“ (12) kaip eilutė
- Dinaminis - tokio tipo masyvuose nėra fiksuoto iš anksto nustatyto elementų, kuriuos galima saugoti, skaičiaus. Tai naudinga dirbant su objektais, kurių skaičiaus negalite iš anksto nustatyti.
Pavyzdžiui : „Dim ArrayMonth ()“ kaip variantas
Sintaksė masyvams deklaruoti
Statiniai matricos
STATIC masyvų deklaravimo sintaksė yra tokia:
Dim arrayName (n) as datatype
ČIA
Kodas | Veiksmas |
„Dim arrayName“ (n) duomenų tipas |
|
Dinaminiai masyvai
DYNAMIC masyvų deklaravimo sintaksė yra tokia:
Dim arrayName() as datatypeReDim arrayName(4)
ČIA
Kodas | Veiksmas |
„Dim arrayName“) duomenų tipas |
|
„ReDim arrayName“ (4) |
|
Masyvo matmenys
Masyvas gali būti vienas matmuo, du matmenys arba daugialypis.
- Vienas aspektas : šiame matmenyje masyvas naudoja tik vieną indeksą. Pavyzdžiui, daugybė kiekvieno amžiaus žmonių.
- Du matmenys : šiame matmenyje masyvas naudoja du indeksus. Pavyzdžiui, kiekvienos klasės mokinių skaičius. Tam reikalingas klasių skaičius ir kiekvienos klasės mokinių skaičius
- Keli aspektai : šiame aspekte masyvas naudoja daugiau nei du indeksus. Pavyzdžiui, temperatūra dieną. (30, 40, 20).
Kaip naudoti masyvą „Excel VBA“
Mes sukursime paprastą programą. Ši programa užpildo „Excel“ lapą su masyvo kintamojo duomenimis. Šiame VBA masyvo pavyzdyje mes atliksime šiuos dalykus.
- Sukurkite naują „Microsoft Excel“ darbaknygę ir išsaugokite ją kaip „Excel Macro“ įgalintą darbaknygę (* .xlsm)
- Pridėkite komandos mygtuką prie darbaknygės
- Nustatykite komandos mygtuko pavadinimą ir antraštės ypatybes
- VBA, užpildančios „Excel“ lapą, programavimas
Leiskite atlikti šį pratimą žingsnis po žingsnio,
1 žingsnis - sukurkite naują darbaknygę
- Atidarykite „Microsoft Excel“
- Išsaugokite naują darbaknygę kaip VBA Arrays.xlsm
2 žingsnis - pridėkite komandos mygtuką
Pastaba: Šiame skyriuje daroma prielaida, kad esate susipažinę su „Excel“ sąsajos kūrimo procesu. Jei nesate susipažinę, perskaitykite mokymo programą „VBA Excel Form Control“ ir „ActiveX Control“. Tai parodys, kaip sukurti sąsają
- Prie lapo pridėkite komandos mygtuką
- Nustatykite pavadinimo ypatybę į cmdLoadBeverages
- Nustatykite antraštės ypatybę Įkelti gėrimus
Dabar jūsų GUI turėtų būti tokia
3 žingsnis - išsaugokite failą
- Spustelėkite mygtuką išsaugoti kaip
- Pasirinkite „Excel Macro-Enabled Workbook“ (* .xlsm), kaip parodyta žemiau esančiame paveikslėlyje
4 žingsnis - parašykite kodą
Dabar mes parašysime savo programos kodą
- Dešiniuoju pelės mygtuku spustelėkite mygtuką Įkelti gėrimus ir pasirinkite rodinio kodą
- Pridėkite šį kodą prie „cmdLoadBeverages“ paspaudimo įvykio
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
ČIA
Kodas |
Veiksmas |
Blausūs gėrimai (nuo 1 iki 4) kaip styginiai |
|
Gėrimai (1) = "Pepsi" |
|
Sheet1.Cells (1, 1) .Value = "Mano mėgstamiausi gėrimai". |
|
1. lapas. Ląstelės (2, 1). Vertė = gėrimai (1) |
|
Testuojama mūsų programa
Pasirinkite skirtuką kūrėjas ir įsitikinkite, kad mygtukas Dizaino režimas yra „išjungtas“. Indikatorius yra baltas, o ne spalvotas (žalsvas). (Žr. Paveikslėlį žemiau)
Spustelėkite mygtuką Įkelti gėrimus
Gausite šiuos rezultatus
Atsisiųskite „Excel“, kuriame yra aukščiau pateiktas kodas
Atsisiųskite aukščiau nurodytą „Excel“ kodą
Santrauka
- Masyvas yra kintamasis, galintis saugoti daugiau nei vieną reikšmę
- „Excel VBA“ palaiko statinius ir dinaminius masyvus
- Masyvai leidžia lengvai rašyti prižiūrimą kodą, palyginti su daugybės kintamųjų deklaravimu duomenims, kurie yra logiškai susiję.