Objekt kolekce Excel VBA

Viděli jsme slovník VBA a VBA Array mají podobné spojení s VBA Collection. Ve VBA Collection můžeme vytvořit vlastní sbírku skupiny a poskytnout položku a klíč k získání hodnoty uložené pod ní. Zatímco ve slovníku VBA jsme vytvořili vlastní slovník ve VBA, který vytvořil náš vlastní slovník, který má definici slov a hodnot jako normální slovník. A to samé také ve VBA Array, kde jsme použili k vytvoření objektu kolekce s omezenou velikostí.

Výhodou kolekce VBA je, že nemusíme rozšiřovat velikost jakéhokoli objektu, který zde definujeme. Kterýkoli objekt vytvořený v kolekci VBA nemá žádná omezení. A nemusíme měnit velikost žádného objektu, jako bychom si mysleli, že to vyžaduje.

Spolu s vytvořením objektu Add Collection můžeme také použít objekty Count, Item a Remove.

Jak vytvořit objekt kolekce v Excel VBA?

Níže jsou uvedeny různé příklady vytvoření objektu kolekce v Excelu pomocí kódu VBA.

Tuto šablonu VBA Collection Excel si můžete stáhnout zde - VBA Collection Excel Template

Kolekce Excel VBA - Příklad č. 1

V tomto příkladu uvidíme, jak vytvořit kolekci objektů ve VBA. Postupujte podle následujících kroků:

Krok 1: Přejděte do okna VBA, na kartě nabídky Vložit vyberte modul, jak je znázorněno níže.

Krok 2: Napište podkategorii kolekce VBA se stejným názvem, nebo si můžeme zvolit libovolné jiné jméno podle našeho pohodlí.

Kód:

 Sub Excel_Collection1 () End Sub 

Krok 3: Nyní definujte proměnnou jako kolekci v libovolném názvu, jak je uvedeno níže.

Kód:

 Sub Excel_Collection1 () Dim ColObject jako konec kolekce Sub 

Můžeme zvolit libovolné slovo, text nebo název definující proměnnou, ale doporučujeme ji definovat nejprve v procesu provádění funkce.

Krok 4: Nastavte definovanou proměnnou jako Nová kolekce. To pomůže při aktivaci a nastavení již definovaného objektu jako kolekce na novou kolekci.

Kód:

 Sub Excel_Collection1 () Dim ColObject jako sada kolekce ColObject = Nový konec kolekce Sub 

Krok 5: V popisu různých objektů kolekce jsme viděli Add, Ite m, Count and Remove . Nyní budeme všechny tyto objekty používat pro ukládání nového obsahu. Nejprve přidáme ADD k definované proměnné ColObject .

Kód:

 Sub Excel_Collection1 () Dim ColObject jako sada kolekce ColObject = Nová kolekce ColObject.Add End Sub 

Krok 6: Nyní v položce ITEM vybereme pořadové číslo, které může být cokoli. Zde ji vybíráme jako 1.

Kód:

 Sub Excel_Collection1 () Dim ColObject jako sada kolekce ColObject = Nová kolekce ColObject.Add Item: = 1, End Sub 

Krok 7: V Syntaxi kolekce VBA musíme zadat klíč, ke kterému můžeme přidělit položku ITEM. Zde také můžeme vybrat cokoli, co bude přidáno do úložiště VBA. Slovo Newton jsme zde zvážili.

Kód:

 Sub Excel_Collection1 () Dim ColObject jako sada kolekce ColObject = Nová kolekce ColObject.Add Item: = 1, Key: = "Newton" End Sub 

Krok 8: Můžeme přeskočit část Syntaxe před a po. Nyní přidělíme klíč proměnné objektu Collection.

Kód:

 Sub Excel_Collection1 () Dim ColObject jako sada kolekce ColObject = Nová kolekce ColObject.Add Item: = 1, Key: = "Newton" ColResult = ColObject ("Newton") End Sub 

Krok 9: Pomocí okna se zprávou zobrazíte hodnotu uloženou v proměnné objektu Collection.

Kód:

 Sub Excel_Collection1 () Dim ColObject jako sada kolekce ColObject = Nová kolekce ColObject.Add Item: = 1, Key: = "Newton" ColResult = ColObject ("Newton") MsgBox ColResult End Sub Sub 

Krok 10: Nyní zkompilujte kód a spusťte jej kliknutím na tlačítko Přehrát umístěné pod panelem nabídek.

Dostaneme zprávu jako 1. Což znamená, že pro klíč Newton je položka umístěna na 1. pozici.

Kolekce Excel VBA - Příklad č. 2

Existuje další metoda nebo způsob, jak můžeme vidět, jaké číslo položky je přiřazeno k kterému klíči. Můžeme také spočítat počet klíčů vyplněných v objektu VBA Collection. Tento proces je docela podobný procesu, který jsme viděli v příkladu 1. Postupujte podle následujících kroků:

Krok 1: Napište níže uvedenou podkategorii kolekce VBA.

Kód:

 Sub Excel_Collection2 () End Sub 

Krok 2: Zvažte stejnou proměnnou, jakou jsme viděli v příkladu 1, jako Collection a nastavte ji jako New Collection jako ColObject.

Kód:

 Sub Excel_Collection2 () Dim ColObject jako sada kolekce ColObject = Nový konec kolekce Sub 

ColObject je v tomto příkladu jedinou proměnnou, díky které uvidíme počet nebo posloupnost definovaných položek a klíčů.

Krok 3: Nyní definovanému objektu kolekce přiřaďte funkci ADD a vyberte libovolnou hodnotu podle vašeho výběru. Zde vybíráme 10.

Kód:

 Sub Excel_Collection2 () Dim ColObject jako sada kolekce ColObject = Nová kolekce ColObject.Add 10 End Sub 

Krok 4: Podobně přidejte 2 nebo 3 další objekty kolekce, jak je znázorněno níže.

Kód:

 Sub Excel_Collection2 () Dim ColObject jako sada kolekce ColObject = Nová kolekce ColObject.Add 10 ColObject.Add 20 ColObject.Add 30 End Sub 

Krok 5: Chcete-li znát počet položek použitých v objektu Collection, použijeme tisk Debug.

Kód:

 Sub Excel_Collection2 () Dim ColObject jako sada kolekce ColObject = Nová kolekce ColObject.Add 10 ColObject.Add 20 ColObject.Add 30 Debug.Print End Sub 

Hlavní plus použití Debug tisku zde namísto pole zprávy je, že bychom mohli získat počet spolu s chybou, pokud existuje. Pro každou chybu dostaneme výstup jako Zero a zatímco pro správný proces dostaneme skutečnou hodnotu.

Krok 6: K získání počtu proměnných ColObject použijeme funkci Count, která je součástí vestavěné funkce v seznamu.

Kód:

 Sub Excel_Collection2 () Dim ColObject jako sada kolekce ColObject = Nová kolekce ColObject.Add 10 ColObject.Add 20 ColObject.Add 30 Debug.Print ColObject.Count End Sub Sub 

Krok 7: Z nabídky Zobrazit vyberte Okno Okamžité, jak je ukázáno níže. Nebo můžeme použít klávesovou zkratku jako Ctrl + G k získání tohoto okna.

Toto je místo, kde uvidíme výstup pomocí tisku Debug.

Krok 8: Nyní zkompilujte kód a spusťte jej kliknutím na tlačítko Přehrát umístěné pod panelem nabídek. Uvidíme, v okamžitém okně se počet celkových kolekcí objektů blíží jako 3 .

Nyní otestujeme, zda je získaný počet správný nebo ne, odstraníme jeden řádek objektu kolekce nebo jej převedeme na text umístěním apostrofu (') a znovu spustíme kód.

Aktualizovaný počet získáme jako 2, což je počet objektů kolekce 10 a 20 Číslo položky. A můžeme si všimnout, že 3. řádek objektu kolekce je zbarven jako Zelený a to je známka získání kódu převedeného na text.

Výhody kolekce Excel VBA

  • Nemusíme měnit velikost objektu, který jsme definovali.
  • Můžeme použít různé objekty kolekce, které jsou zabudovány do vynikající kolekce VBA. Tyto objekty nejsou vidět v jiných funkcích, jako je VBA Dictionary nebo VBA Array.
  • Podle VBA Collection můžeme také získat jakýkoli typ databáze zákazníků nebo produktů.

Co si pamatovat

  • Doporučuje se použít Debug print místo Message Box. Tímto způsobem bychom mohli vidět chybu a napravit ji.
  • Podle kolekce VBA můžeme různé typy objektů a přidat libovolnou velikost dat.
  • Ve funkci Object item můžeme definovat libovolné číslo podle našeho výběru. Chceme vidět kód produktu, sled nebo cenu.
  • Uložení souboru do Makro enable excel nám umožní zachovat kód pro další.

Doporučené články

Toto je průvodce sbírkou VBA. Zde diskutujeme o tom, jak vytvořit objekt Collection v Excelu pomocí kódu VBA spolu s praktickými příklady a stahovatelnou šablonou Excel. Můžete si také prohlédnout naše další doporučené články -

  1. Průvodce používáním délky pole VBA
  2. Jak vypočítat rozsah v Excelu?
  3. Cvičení na VBA buňkách
  4. PowerPivot v Excelu

Kategorie: