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.