Excel VBA ArrayList

Strukture podataka koriste se za pohranu niza podataka u programskim jezicima. On se veže za memoriju, a ne za adresu. ArrayList je jedna od struktura podataka u excelu. Usporedba sa normalnim nizovima u excelu ArrayList je dinamična. Stoga nije potrebna početna deklaracija o veličini. ArrayList nije dio VBA, povezan je s vanjskom knjižnicom koja se može koristiti s VBA.

ArrayList može se definirati kao popis mjesta u blizini memorije. Tamo gdje su vrijednosti pronađene pomoću brojeva indeksa. Popis počinje s indeksnim brojem '0', prvi element bit će umetnut u indeks '0', a ostatak slijede 1, 2, 3, itd. ArrayList nudi obilje ugrađenih operacija, razvrstavanja, dodavanja, uklanjanja, kretanje unazad, itd., neke su od njih.

Dodavanje knjižnice

Za upotrebu ArrayLista u VBA treba uključiti knjižnicu ' mscorlib.dll' koja dolazi s .NET okvirom .

  • Pritisnite F11 ili desnom tipkom miša kliknite naziv lista da biste dobili prozor s kodom. Idite na prozor VBA koda, u glavnom izborniku odaberite Alati .

  • Izbornik alata sadrži opciju 'reference' i sastoji se od popisa knjižnica koji podržavaju VBA za uključivanje različitih objekata. Kliknite na opciju Reference .

  • Odvest će vas do prozora s popisom različitih biblioteka koje podržavaju VBA i Excel. Pomaknite se prema dolje da biste pronašli ' dll'. Označite potvrdu odabira, a zatim pritisnite gumb "U redu".

Sada je knjižnica uključena u vaš VBA kôd i podržat će različite metode povezane s ArrayListom.

Kako stvoriti VBA ArrayList u Excelu?

Ispod su sljedeći primjeri za stvaranje VBA ArrayList u Excelu.

Ovdje možete preuzeti ovaj VBA ArrayList Excel predložak - VBA ArrayList Excel predložak

Excel VBA ArrayList - Primjer # 1

Kako dodati vrijednosti u ArrayList pomoću VBA?

ArrayList djeluje kao popis na kojem možemo dodavati vrijednosti. To će se automatski pohraniti u različite dijelove počevši od 0, 1, 2 itd. Vrijednosti se mogu dodati ili umetnuti u ArrayList koristeći metodu dodavanja.

U ovom primjeru naučit ćete kako dodati popis vrijednosti u ArrayList. Slijedite dolje navedene korake za dodavanje ArrayLista pomoću VBA koda u excelu.

Korak 1: Za dodavanje popisa vrijednosti u ArrayList kreirajte funkciju Arraylist1.

Kodirati:

 Private Sub arraylist1 () Kraj Sub 

Korak 2: Sada želimo uključiti ArrayList u funkciju kao objekt gdje je popis deklariran kao ArrayList.

Kodirati:

 Private Sub arraylist1 () Dim alist Kao ArrayList End Sub 

Korak 3: Budući da je ovo objekt da biste ga koristili, morate stvoriti instancu ArrayList-a. Postavite novu instancu za ovaj objekt.

Kodirati:

 Private Sub arraylist1 () Dim alist Kao ArrayList Set alist = Novi ArrayList End Sub 

Korak 4: Sada pomoću svojstva "Add" ArrayList dodaje vrijednosti u ArrayList. Ako se popis doda u vrijednosti indeksa redom 0, 1, 2, 3 itd.

Kodirati:

 Private Sub arraylist1 () Dim alist As ArrayList Set alist = Novi ArrayList alist.Dodajte "192" 'indeks (0) alist.Dodajte "168"' indeks (1) alist.Dodajte "1" 'indeks (2) alist.Add Indeks "240" (3) Krajnji sub 

Korak 5: Da bismo provjerili jesu li vrijednosti dodane na popis, ispisujemo vrijednosti matrice pomoću okvira s porukama. Za ispis vrijednosti svaki indeks se ispisuje jer su vrijednosti pohranjene u tim particijama.

Kodirati:

 Private Sub arraylist1 () Dim alist As ArrayList Set alist = Novi ArrayList alist.Dodajte "192" 'indeks (0) alist.Dodajte "168"' indeks (1) alist.Dodajte "1" 'indeks (2) alist.Add "240" 'indeks (3) MsgBox ("\\" & alist (0) & "." & Alist (1) & "." & Alist (2) & "." & Alist (3)) Kraj Sub 

Korak 6: Pritisnite F5 ili gumb za pokretanje kako biste pokrenuli program, a vrijednosti će biti ispisane kao dolje. Ovdje se pohranjuje IP adresa u ArrayList i dok se ispisuju vrijednosti dodatne bilješke spajaju se u IP adresu u pravilnom formatu.

Pogreška automatizacije u VBA

Česta je pogreška tijekom pokretanja ArrayList-a. Pogreška automatizacije može naići na "Greška pri pokretanju" -2146232576 (80131700) Pogreška automatizacije "

To je zbog neispravne verzije instaliranog .NET okvira. Za rad s ArrayListom morate imati najmanje .NET 3.5 ili više verzije .NET okvira.

Excel VBA ArrayList - primjer br. 2

Razvrstavanje ArrayList pomoću VBA koda

ArrayList podržava različite funkcije kao što su razvrstavanje, preokretanje itd., Ovo pomaže u sortiranju vrijednosti umetnutih u ArrayList. Nakon dodavanja popisa u ArrayList moguće je obrnuti umetnuti popis.

Slijedite korake u nastavku kako biste razvrstali ArrayList pomoću VBA koda:

Korak 1: Stvorite funkciju koja se zove arraysort1 za izvođenje sortiranja unutar umetnutih vrijednosti u ArrayList.

Kodirati:

 Sub arraysort1 () Kraj Sub 

Korak 2: Proglasite objekt 'polja nizova' ArrayLista. Pomoću ovog objekta možete dodati i sortirati vrijednosti u ArrayListu.

Kodirati:

 Sub arraysort1 () Dimni niz kao ArrayList End Sub 

Korak 3: Slično prvom primjeru potrebno je stvoriti novu instancu deklariranog objekta. Postavite ovaj primjerak kao novi ArrayList.

Kodirati:

 Sub arraysort1 () Dim polje polja As ArrayList Set arraysort = Novi ArrayList End Sub 

Korak 4: Sada pomoću metode "Dodaj" umetnite elemente u ArrayList. Koji ne posjeduje nikakav poredak po vrijednostima. Nasumično su neke vrijednosti umetnute u popis.

Kodirati:

 Sub arraysort1 () Dim arraysort As ArrayList Set arraysort = Novi ArrayList arraysort.Dodajte "13" arraysort.Add "21" arraysort.Add "67" arraysort.Add "10" arraysort.Add "12" arraysort.Add "45" End Pod 

Korak 5: Da bismo primijetili razliku u ArrayListu, ispisujemo ArrayList nakon umetanja vrijednosti i prije sortiranja.

Kodirati:

 Sub arraysort1 () Dim arraysort As ArrayList Set arraysort = Novi ArrayList arraysort.Dodajte "13" arraysort.Add "21" arraysort.Add "67" arraysort.Add "10" arraysort.Add "12" arraysort.Add "45" MsgBox (niz polja (0) & vbCrLf & niz polja (1) _ & vbCrLf & niz polja (2) & vbCrLf & arraysort (3) _ & vbCrLf & arraysort (4) & vbCrLf & niz polja (5)) Kraj Sub 

Korak 6: Pritisnite tipku F5 na tipkovnici ili pokrenite gumb na prozoru koda da biste pokrenuli program za ispis ArrayLista. ArrayList je ispisan istim redoslijedom kao i umetnut, jer koristimo indeksne brojeve u njegovom ispravnom redoslijedu.

Korak 7: Sada na ovaj popis primijenite svojstvo sortiranja ArrayList. Upotrijebite način sortiranja za sortiranje umetnute liste. Svojstvo sortiranja prema zadanom će sortirati popis vrijednosti u uzlaznom redoslijedu.

Kodirati:

 Sub arraysort1 () Dim arraysort As ArrayList Set arraysort = Novi ArrayList arraysort.Add "13" arraysort.Add "21" arraysort.Add "67" arraysort.Add "10" arraysort.Add "12" arraysort.Add "45" arraysort .Sort MsgBox (niz (0) & vbCrLf i niz podataka (1) _ & vbCrLf & niz matrikata (2) & vbCrLf & arraysort (3) _ & vbCrLf & nizovi (4) & vbCrLf & nizovi (5) Kraj Pod 

Korak 8: Pritisnite tipku F5 ili Pokreni pod VBE da biste pokrenuli ovaj kod, gdje su vrijednosti sortirane i ispisane po redoslijedu od najmanje do najveće vrijednosti.

Excel VBA ArrayList - primjer br. 3

Obrtanje ArrayLista pomoću VBA koda

Ako želite obrnuti redoslijed umetnutih vrijednosti u ArrayList obrnutoj metodi je dostupan. To će obrnuti redoslijed popisa iz njegovog trenutnog poretka. Sada smo već razvrstali ArrayList u prethodnom primjeru, koji je u uzlaznom redoslijedu.

Pokušajmo preokrenuti sortirani niz kako bismo ga uspostavili silaznim redoslijedom. Za to koristite obrnutu metodu ArrayList.

Kodirati:

 Sub arraysort2 () Dim arraysort As ArrayList Set arraysort = Novi ArrayList arraysort.Dodajte "13" arraysort.Add "21" arraysort.Add "67" arraysort.Add "10" arraysort.Add "12" arraysort.Add "45" arraysort .Sort arraysort.Reverse MsgBox (niz (0) & vbCrLf & arraysort (1) _ & vbCrLf & arraysort (2) & vbCrLf & arraysort (3) _ & vbCrLf & niz (4) & vbCrLf & endraysort (4) Pod 

Nakon primjene obrnute metode, ArrayList će postati silaznim redoslijedom i upotrijebiti okvir za ispis obrnute matrice. Poredani popis mijenja se iz velike u malu vrijednost.

Stvari koje treba zapamtiti

  • ArrayList je dinamične prirode; ne zahtijeva ponovnu inicijalizaciju.
  • Različite ugrađene metode povezane su s ArrayListom.
  • U odnosu na niz, ArrayList je jednostavan za korištenje u Excelu VBA.
  • Podržavajuće .NET knjižnice trebaju biti uključene u VBA za rad s ArrayListom.
  • ArrayList je memorijska lokacija koja se kontinuirano identificira pomoću indeksnih vrijednosti.

Preporučeni članci

Ovo je vodič za VBA ArrayList. Ovdje smo raspravljali o tome kako stvoriti ArrayList u Excelu VBA zajedno s praktičnim primjerima i besplatnim excel predložakom. Možete i pregledati naše druge predložene članke -

  1. Vodič za korištenje VBA nizova
  2. Excel Poredaj po broju
  3. Kako razvrstati u Excel pomoću VBA?
  4. Vodiči za razvrstavanje u Excelu

Kategorija: