Prohlášení o sadě VBA | Jak přiřadit hodnoty proměnným objektu?
Výkaz sady Excel VBA
Sada VBA je příkaz, který se používá k přiřazení libovolného hodnotového klíče, který říká objektu nebo odkazu na proměnnou, pomocí této funkce definujeme parametr pro určitou proměnnou, například když napíšeme Set M = A, což znamená nyní M reference má stejné hodnoty a atributy podobné těm, které má A.
Ve VBA je objekt jádrem aplikace Excel, protože bez objektů nemůžeme nic dělat. Objekty jsou sešit, list a rozsah. Když deklarujeme proměnnou, musíme jí přiřadit datový typ a můžeme také přiřadit objekty jako datové typy. K přiřazení hodnoty deklarovaným objektovým proměnným musíme použít slovo „SET“. Slovo „Set“ se používá k označení nového objektu ve VBA, například s odkazem na konkrétní rozsah konkrétního listu.
Jak používat příkaz sady Excel VBA?
Tuto šablonu prohlášení sady VBA si můžete stáhnout zde - Šablona prohlášení sady VBA# 1 - Set Statement with Range Object Variables
Předpokládejme například, že chcete poměrně často používat rozsah A1 až D5. Místo psaní kódu jako Range („A1: D5“) můžeme pokaždé deklarovat proměnnou jako range a nastavit reference rozsahu jako Range („A1: D5“)
Krok 1: Deklarujte proměnnou jako Range objekt.
Kód:
Dílčí sada_Příklad ()
Dim MyRange As Range
End Sub
Krok 2: V okamžiku, kdy přiřadíme datový typ jako rozsah, použijte slovo „Nastavit“.
Kód:
Sub Set_Example () Dim MyRange As Range Set MyRange = End Sub
Krok 3: Nyní uveďte rozsah.
Kód:
Sub Set_Example () Dim MyRange As Range Set MyRange = Range ("A1: D5") End Sub
Krok 4: Nyní se proměnná „MyRange“ rovná rozsahu A1 až D5. Pomocí této proměnné můžeme přistupovat ke všem vlastnostem a metodám tohoto rozsahu.
Můžeme kopírovat, přidávat komentáře v aplikaci Excel a dělat mnoho dalších věcí.
Například jsem zde vytvořil několik čísel.
Nyní pomocí proměnné změním velikost písma na 12.
Kód:
Sub Set_Example () Dim MyRange As Range Set MyRange = Range ("A1: D5") MyRange.Font.Size = 12 End Sub
Tím se změní velikost písma přiřazeného rozsahu.
Takto můžeme pomocí slova „Nastavit“ dělat mnoho věcí s určitým rozsahem.
# 2 - Nastavit příkaz s proměnnými objektu listu
Viděli jsme, jak „sada“ pracuje s objektem rozsahu ve VBA. Funguje přesně stejně jako objekt listu.
Řekněme, že máte v sešitu 5 listů a chcete se vracet k jednomu konkrétnímu listu, můžete tento název listu nastavit na definovanou proměnnou objektu.
Podívejte se například na níže uvedený kód.
Kód:
Sub Set_Worksheet_Example () Dim Ws As Worksheet Set Ws = Worksheets ("Summary Sheet") End Sub
Ve výše uvedeném kódu byla proměnná „Ws“ definována jako objektová proměnná a na dalším řádku pomocí slova „Set“ jsme proměnnou nastavili na list s názvem „Summary Sheet“.
Nyní pomocí této proměnné můžeme dělat všechny věci s ní spojené. Podívejte se na níže uvedené dvě sady kódu.
# 1 - Bez slova „Set“
Kód:
Sub Set_Worksheet_Example1 () 'Chcete-li vybrat listy pracovních listů ("Souhrnný list"). Vyberte "Chcete-li aktivovat listy listů (" Souhrnný list "). Aktivovat' Chcete-li skrýt listy listů (" Souhrnný list "). Viditelné = xlVeryHidden 'To odkryje listy pracovních listů ("souhrnný list"). Viditelné = xlVisible End Sub
Pokaždé, když jsem použil objekt pracovních listů, abych odkazoval na list „Souhrnný list“. Díky tomu je kód tak zdlouhavý a jeho psaní vyžaduje hodně času.
Jako součást obrovského kódu je frustrující zadávat tento název listu pokaždé, když potřebujete odkazovat na list.
Nyní se podívejme na výhodu použití slova Nastavit v kódu.
# 2 - Se slovem „Set“
Kód:
Sub Set_Worksheet_Example () Dim Ws As Worksheet Set Ws = Worksheets ("Summary Sheet") 'To select the sheet Ws.Select' To Activate the sheet Ws.Activate 'To hide the sheet Ws.Visible = xlVeryHidden' To hide the sheet Ws .Visible = xlVisible End Sub
V okamžiku, kdy nastavíme název listu, můžeme vidět název proměnné při zadávání kódu jako součásti seznamu.
# 3 - Set Statement with Workbook Object Variables
Skutečná výhoda slova „Set“ ve VBA nastává, když potřebujeme odkazovat na různé sešity.
Když pracujeme s různými sešity, je těžké napsat celý název sešitu a jeho příponu.
Předpokládejme, že máte dva různé sešity s názvem „Souhrnný prodejní soubor 2018.xlsx“ a „Souhrnný prodejní soubor 2019.xlsx“, můžeme dva sešity nastavit jako níže uvedený kód.
Kód:
Sub Set_Workbook_Example1 () Dim Wb1 As Workbook Dim Wb2 As Workbook Set Wb1 = Workbooks ("Sales Summary File 2018.xlsx") Set Wb2 = Workbooks ("Sales Summary File 2019.xlsx") End Sub
Proměnná Wb1 se nyní rovná sešitu s názvem „Sales Summary File 2018.xlsx“ a proměnná Wb2 se rovná sešitu s názvem „Sales Summary File 2019.xlsx“.
Pomocí této proměnné můžeme skutečně přistupovat ke všem vlastnostem a metodám spojeným se sešitem.
Můžeme zkrátit kód jako níže.
Bez použití Set Keyword k aktivaci sešitu:
Sešity („Souhrnný soubor prodeje 2018.xlsx“). Aktivujte
Aktivace sešitu pomocí nastavení klíčového slova:
Wb1. Aktivovat
Díky tomu je psaní kódu mnohem jednodušší a také jakmile je nastaven název sešitu, existuje obava z překlepu názvů sešitu.