Lekce 16 - ArrayList ve VBA
V minulé lekci, Datum a čas ve VBA, jsme si ukázali práci s datem a časem.
V dnešním VBA tutoriálu si ukážeme kolekci typu
ArrayList
, která je chytřejší než pole. Umožňuje totiž
prvky libovolně přidávat a mazat.
Víme, že pole má konstantní velikost, což je daň za jeho vysokou
rychlost. Nyní si představíme kolekci typu ArrayList
, kterou
můžeme chápat jako nadstavbu pole.
Kolekce je struktura, do které můžeme ukládat více objektů. Kolekce jsou přizpůsobeny různým účelům a můžeme s nimi i různě zacházet. Do kolekcí můžeme jednoduše za běhu programu přidávat a mazat záznamy.
Kolekce typu ArrayList
nám umožnuje nejen libovolné
přidávání a mazání prvků, ale také například řazení, převod na
pole, odstraňování všech položek a podobně. Začněme jednoduchým
programem simulující losování v nějaké loterii
Losování
Napíšeme si program, v kterém budeme náhodně losovat čísla uložená v
kolekci typu ArrayList
V programu se vždy zeptáme, zda chceme losovat další číslo,
které pak následně přidáme do kolekce typu ArrayList
. Pokud
již nebudeme chtít losovat, seřadíme čísla od nejmenšího po největší
a vypíšeme je.
Třídní modul Losovac
Založme si nový excelovský soubor s názvem Losovani
. Do
složky Class Modules/
vložíme nový třídní
modul s názvem Losovac
. Do modulu si napíšeme
privátní proměnnou cisla
typu
Object
:
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
Ve VBA tutoriálu si představíme kolekci ArrayList, do které můžeme položky libovolně přidávat a mazat.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.