Excel VBA nizovi: vrste i kako ih koristiti s primjerom
⚡ Pametni sažetak
Excel VBA nizovi pohranjuju skupinu povezanih vrijednosti istog tipa podataka pod jednim imenom, kojima se pristupa putem indeksa. Ova stranica objašnjava statičke i dinamičke nizove, jednodimenzionalne, dvodimenzionalne i višedimenzionalne nizove, sintaksu deklaracije i obrađeni primjer punjenja napitaka.

Što je VBA polje?
Niz je definiran kao memorijska lokacija koja može pohraniti više od jedne vrijednosti. Sve vrijednosti moraju biti iste vrste podataka. Recimo da želite pohraniti popis svojih omiljenih pića u jednu varijablu, za to možete koristiti VBA polje.
Korištenjem niza, možete se pozivati na povezane vrijednosti pod istim imenom. Možete koristiti indeks ili indeks da ih razlikujete. Pojedinačne vrijednosti nazivaju se elementima Excel VBA polja. Oni su susjedni od indeksa 0 do najviše vrijednosti indeksa.
Ovaj vodič pretpostavlja da koristite Microsoft nadmašiti verzija 2013. Znanje se i dalje odnosi na druge verzije Microsoft Excel također.
Koje su prednosti nizova?
Prije pisanja koda za nizove, korisno je razumjeti zašto se isplati koristiti nizove. Slijede neke od prednosti koje nudi VBA funkcija niza.
- Grupirajte logički povezane podatke zajedno – recimo da želite pohraniti popis učenika. Možete koristiti jednu varijablu niza koja ima odvojene lokacije za kategorije učenika, npr. vrtić, osnovna, srednja škola, srednja škola itd.
- Nizovi olakšavaju pisanje koda koji se može održavati. Za iste logički povezane podatke, omogućuje definiranje jedne varijable, umjesto definiranja više od jedne varijable.
- Bolja izvedba – nakon što je niz definiran, brže je dohvaćati, sortirati i mijenjati podatke.
Vrste nizova u VBA
VBA podržava dvije vrste nizova, naime;
- statički – Ove vrste nizova imaju fiksni unaprijed određen broj elemenata koji se mogu pohraniti. Ne može se promijeniti veličina tipa podataka statičkog polja. Ovo je korisno kada želite raditi s poznatim entitetima kao što su broj dana u tjednu, spol itd.Na primjer: Dim ArrayMonth(12) Kao niz
- Dinamičan – Ove vrste nizova nemaju fiksni unaprijed određen broj elemenata koji se mogu pohraniti. Ovo je korisno kada radite s entitetima čiji broj ne možete unaprijed odrediti.Na primjer: Dim ArrayMonth() kao varijanta
Nakon što znate koji tip odgovara vašim podacima, sljedeći korak je sintaksa deklaracije za svaki od njih.
Sintaksa za deklariranje nizova
Statički nizovi
Sintaksa za deklariranje STATIČKI nizova je kako slijedi:
Dim arrayName (n) as datatype
OVDJE,
| Code | Akcijski |
|---|---|
| Dim arrayName (n) tip podataka |
|
Dinamički nizovi
Sintaksa za deklariranje DINAMIČAN nizova je kako slijedi:
Dim arrayName() as datatype ReDim arrayName(4)
OVDJE,
| Code | Akcijski |
|---|---|
| Vrsta podataka Dim arrayName (). |
|
| ReDim arrayName(4) |
|
Dimenzije polja
Niz može biti jednodimenzionalan, dvodimenzionalan ili višedimenzionalan.
- Jedna dimenzija: U ovoj dimenziji niz koristi samo jedan indeks. Na primjer, određeni broj ljudi svake dobi.
- Dvije dimenzije: U ovoj dimenziji niz koristi dva indeksa. Na primjer, broj učenika u svakom razredu. Zahtijeva broj razreda i broj učenika u svakom razredu
- Više dimenzija: U ovoj dimenziji niz koristi više od dva indeksa. Na primjer, temperature tijekom dana. (30, 40, 20).
Kako koristiti niz u programu Excel VBA
Nakon što smo obradili teoriju, možemo primijeniti niz u stvarnoj radnoj knjizi. Izradit ćemo jednostavnu aplikaciju. Ova aplikacija popunjava Excel tablicu podacima iz varijable niza. U ovom VBA primjeru niza, učinit ćemo sljedeće.
- Napravite novu Microsoft radnu knjigu programa Excel i spremite je kao radnu knjigu programa Excel s omogućenim makronaredbama (*.xlsm)
- Dodajte naredbeni gumb u radnu knjigu
- Postavite svojstva naziva i opisa naredbenog gumba
- Programiranje VBA koji popunjava Excel list
Izvedite ovu vježbu korak po korak,
Korak 1 – Stvorite novu radnu knjigu
- Otvoren Microsoft nadmašiti
- Spremite novu radnu knjigu kao VBA Arrays.xlsm
Korak 2 – Dodajte naredbeni gumb
Bilješka: Ovaj odjeljak pretpostavlja da ste upoznati s procesom stvaranja sučelja u excelu. Ako niste upoznati, pročitajte tutorial VBA Excel kontrola obrasca i ActiveX kontrola. Pokazat će vam kako izraditi sučelje
- Dodajte naredbeni gumb na list
- Postavite svojstvo name na cmdLoadBeverages
- Postavite svojstvo naslova na Učitavanje pića
Vaše GUI bi sada trebalo biti kako slijedi
Korak 3 – Spremite datoteku
- Kliknite na gumb Spremi kao
- Odaberite Excel radnu knjigu s omogućenim makronaredbama (*.xlsm) kao što je prikazano na slici ispod
Korak 4 – Napišite kod
Sada ćemo napisati kod za našu aplikaciju
- Desnom tipkom miša kliknite gumb Učitaj pića i odaberite prikaz koda
- Dodajte sljedeći kod u događaj klika za cmdLoadBeverages
Private Sub cmdLoadBeverages_Click() Dim Drinks(1 To 4) As String Drinks(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
OVDJE,
| Code | Akcijski |
|---|---|
| Dim Drinks (1 do 4) kao niz |
|
| Piće(1) = “Pepsi” |
|
| Sheet1.Cells(1, 1).Value = “Moja omiljena pića” |
|
| Sheet1.Cells(2, 1).Value = Drinks(1) |
|
Testiranje naše aplikacije
Nakon što je kod postavljen, posljednji korak je pokretanje gumba i potvrda da niz ispunjava list. Odaberite karticu za razvojne programere i provjerite je li gumb Način dizajna "isključen". Indikator je da će imati bijelu pozadinu, a ne obojenu (zelenkastu). (Pogledajte sliku ispod)
Pritisnite gumb Učitaj pića
Dobit ćete sljedeće rezultate
Preuzmite Excel koji sadrži gornji kod





