Kas ir VBA masīvs?
Masīvs tiek definēts kā atmiņas vieta, kas spēj saglabāt vairāk nekā vienu vērtību. Visām vērtībām jābūt viena veida datiem. Pieņemsim, ka vēlaties saglabāt mainīgo dzērienu sarakstu vienā mainīgajā, lai to izdarītu, varat izmantot VBA masīvu.
Izmantojot masīvu, jūs varat atsaukties uz saistītajām vērtībām ar tādu pašu nosaukumu. Varat izmantot indeksu vai apakšindeksu, lai tos atšķirtu. Atsevišķās vērtības tiek dēvētas par Excel VBA masīva elementiem. Tie ir blakus no 0 indeksa līdz augstākajai indeksa vērtībai.
Šajā apmācībā tiek pieņemts, ka izmantojat Microsoft Excel 2013. gada versiju. Zināšanas joprojām attiecas arī uz citām Microsoft Excel versijām.
Šajā VBA programmēšanas apmācībā jūs uzzināsiet
- Kādas ir masīvu priekšrocības?
- Masīvu veidi VBA
- Kā izmantot masīvu programmā Excel VBA
- Pārbauda mūsu lietojumprogrammu
Kādas ir masīvu priekšrocības?
Šie ir daži no VBA masīva funkcijas piedāvātajiem ieguvumiem
- Grupējiet loģiski saistītos datus kopā - pieņemsim, ka vēlaties saglabāt studentu sarakstu. Varat izmantot vienu masīva mainīgo, kam ir atsevišķas vietas studentu kategorijām, ti, dārza dārzs, pamatskola, vidusskola, vidusskola utt.
- Masīvi atvieglo uzturējama koda rakstīšanu. Tiem pašiem loģiski saistītiem datiem tas ļauj definēt vienu mainīgo, nevis definēt vairākus mainīgos.
- Labāka veiktspēja - kad masīvs ir definēts, datus var ātrāk izgūt, kārtot un modificēt.
Masīvu veidi VBA
VBA atbalsta divu veidu masīvus, proti;
- Statisks - šāda veida masīviem ir noteikts iepriekš noteikts skaits elementu, kurus var saglabāt. Nevar mainīt statiskā masīva datu veida lielumu. Tie ir noderīgi, ja vēlaties strādāt ar zināmām vienībām, piemēram, dienu skaitu nedēļā, dzimumu utt.
Piemēram : Dim ArrayMonth (12) kā virkne
- Dinamisks - šāda veida masīviem nav fiksēta iepriekš noteikta skaita elementu, kurus var saglabāt. Tie ir noderīgi, strādājot ar entītijām, kuru numuru nevar iepriekš noteikt.
Piemēram : Dim ArrayMonth () kā variants
Sintakse masīvu deklarēšanai
Statiskie bloki
STATIC masīvu deklarēšanas sintakse ir šāda:
Dim arrayName (n) as datatype
ŠEIT,
Kods | Darbība |
Dim arrayName (n) datu tips |
|
Dinamiskie bloki
DYNAMIC masīvu deklarēšanas sintakse ir šāda:
Dim arrayName() as datatypeReDim arrayName(4)
ŠEIT,
Kods | Darbība |
Dim arrayName () datu tips |
|
ReDim arrayName (4) |
|
Masīva izmēri
Masīvs var būt viena dimensija, divas dimensijas vai daudzdimensionāls.
- Viena dimensija : šajā dimensijā masīvs izmanto tikai vienu indeksu. Piemēram, cilvēku skaits katrā vecumā.
- Divas dimensijas : šajā dimensijā masīvā tiek izmantoti divi indeksi. Piemēram, katras klases skolēnu skaits. Tas prasa klašu skaitu un studentu skaitu katrā klasē
- Vairāku kategoriju : šajā dimensijā masīvā tiek izmantoti vairāk nekā divi indeksi. Piemēram, temperatūra dienas laikā. (30, 40, 20).
Kā izmantot masīvu programmā Excel VBA
Mēs izveidosim vienkāršu lietojumprogrammu. Šī lietojumprogramma aizpilda Excel lapu ar masīva mainīgā datiem. Šajā VBA masīva piemērā mēs rīkosimies šādi.
- Izveidojiet jaunu Microsoft Excel darbgrāmatu un saglabājiet to kā Excel makro iespējotu darbgrāmatu (* .xlsm)
- Pievienojiet darbgrāmatai komandas pogu
- Iestatiet komandas pogas nosaukumu un parakstu īpašības
- Programmējot VBA, kas aizpilda Excel lapu
Ļaujiet veikt šo vingrinājumu soli pa solim,
1. solis - izveidojiet jaunu darbgrāmatu
- Atveriet programmu Microsoft Excel
- Saglabājiet jauno darbgrāmatu kā VBA Arrays.xlsm
2. solis - pievienojiet komandas pogu
Piezīme: Šajā sadaļā tiek pieņemts, ka esat pārzinis saskarnes izveides procesu programmā Excel. Ja neesat pazīstams, izlasiet apmācību VBA Excel Form Control un ActiveX Control. Tas parādīs, kā izveidot saskarni
- Pievienojiet komandai pogu komandai
- Iestatiet vārda rekvizītu cmdLoadBeverages
- Iestatiet paraksta rekvizītu Ielādēt dzērienus
Jūsu GUI tagad jābūt šādam
3. solis - saglabājiet failu
- Noklikšķiniet uz pogas Saglabāt kā
- Izvēlieties Excel makro iespējoto darbgrāmatu (* .xlsm), kā parādīts zemāk esošajā attēlā
4. solis - uzrakstiet kodu
Tagad mēs uzrakstīsim mūsu lietojumprogrammas kodu
- Ar peles labo pogu noklikšķiniet uz pogas Ielādēt dzērienus un atlasiet skata kodu
- Pievienojiet cmdLoadBeverages klikšķa notikumam šādu kodu
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
ŠEIT,
Kods |
Darbība |
Blāvi dzērieni (no 1 līdz 4) kā virkne |
|
Dzērieni (1) = "Pepsi" |
|
Sheet1.Cells (1, 1) .Value = "Mani iecienītākie dzērieni". |
|
1. lapa. Šūnas (2, 1). Vērtība = Dzērieni (1) |
|
Pārbauda mūsu lietojumprogrammu
Atlasiet cilni izstrādātājs un pārliecinieties, vai poga Dizaina režīms ir izslēgta. Indikators ir tāds, ka tam būs balts fons, nevis krāsains (zaļgani) fons. (Skatīt attēlu zemāk)
Noklikšķiniet uz pogas Ielādēt dzērienus
Jūs saņemsiet šādus rezultātus
Lejupielādējiet programmu Excel, kas satur iepriekš minēto kodu
Lejupielādējiet iepriekš minēto Excel kodu
Kopsavilkums
- Masīvs ir mainīgais, kas spēj saglabāt vairākas vērtības
- Excel VBA atbalsta statiskos un dinamiskos blokus
- Masīvi atvieglo uzturējama koda rakstīšanu, salīdzinot ar daudzu mainīgo deklarēšanu datiem, kas ir loģiski saistīti.