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





