Premenné objektu sady VBA - zošity, pracovné listy a ďalšie

Tento tutoriál vás naučí definovať objektové premenné pomocou príkazu Set vo VBA.

Definovanie premenných objektu

Objekty sú základným kameňom balíka Microsoft Office - bez objektov nemôžeme nič dosiahnuť. V programe Excel zahŕňajú objekty zošit, pracovný hárok alebo objekty rozsahu. V programe Microsoft Word sú príkladmi objekt Dokument alebo Tabuľka. Každý objekt má rôzne Vlastnosti a Metódy ktoré je možné naprogramovať tak, aby riadilo správanie tohto objektu.

Deklarácia premennej objektu

Predtým, ako budeme môcť odkazovať na objekt v kóde, a teda ovládať objekt, musíme objekt deklarovať. Môžeme to urobiť pomocou príkazu Dim.

123456 Dim wkb ako zošitDim wks as worksheetDim Rng ako rozsahDim wdDoc ako dokumentDim wdTbl ako tabuľkuDim shp ako Shape

Toto Dim vyhlásenie sa môže vyskytnúť v rámci postupu:

alebo mimo postupu na úrovni modulu:

Ak je premenná deklarovaná na úrovni modulu (mimo postupu), premennú je možné použiť v celom module.

Ak je premenná objektu deklarovaná príkazom Public, premennú je možné použiť v celom projekte VBA:

Nastaviť hodnotu

Keď ste objekt deklarovali, musíte mu priradiť hodnotu. To sa musí vykonať pomocou Nastaviť výpis a je možné vykonať iba v rámci a Postup.

12345 SubsetObjects ()Nastaviť wkb = ActiveWorkbookNastaviť wks = list1Nastaviť rng = rozsah ("A1: G4")Koniec pod

Poznámka: Toto sa líši od priraďovania hodnôt neobjektovým premenným. Na priradenie objektu k premennej MUSÍTE použiť príkaz Set. Ak to neurobíte, zobrazí sa chyba:

Keď k objektu priradíte hodnotu, môžete potom písať kód na ovládanie správania alebo manipuláciu s objektom.

Programovanie VBA | Generátor kódu pracuje za vás!

Objektové príklady v Exceli

Objekt zošita

Hneď ako deklarujete premennú zošita, môžete k tomuto objektu priradiť zošit a pomocou vlastností a metód dostupných na manipuláciu s týmto objektom. V nižšie uvedenom príklade uložíme zošit.

123456789101112 Sub WorkbookObject ()'deklarujte objekt zošitaDim wkb ako zošit'Priraďte k objektu neuložený zošitNastaviť wkb = zošity ("Kniha1")'uložiť zošitwkb.SaveAs "C: \ data \ testbook.xlsx"„Zatvorte zošitwkb.close„Nezabudnite predmet uvoľniťNastaviť wkb = ničKoniec pod

Objekt pracovného hárka

Podobne môžete manipulovať s pracovným listom alebo pracovnými listami, keď ste pracovný hárok deklarovali ako premennú. V nižšie uvedenom príklade premenujeme Sheet1 a Sheet2.

12345678910111213 Sub WorksheetObject ()Dim wks1 ako pracovný listDim wks2 ako pracovný list'inicializujte objektyNastaviť wks1 = list1Nastaviť wks2 = list2“premenujte listywks1.Name = "Zákazníci"wks2.Name = "Produkty"'nastavte objekty na ničwks1 = Ničwks2 = NičKoniec pod

Ste unavení z hľadania príkladov kódu VBA? Skúste AutoMacro!

Objekt dosahu

Objekt Rozsah je jedným z najužitočnejších objektov, s ktorými je možné v programe Excel manipulovať. V nižšie uvedenom príklade označíme rozsahy A1 až E1 tučným písmom a naformátujeme ho so spodným okrajom.

12345678910111213 Sub RangeObject ()Dim rng1 As Range„zintenzívnite rozsahNastaviť rng = rozsah ("A1: E1")'zvýraznite rozsah a nastavte spodný okrajrng.Font.Bold = PravdaS rng1.Borders (xlEdgeBottom).LineStyle = xlSpojité.ColorIndex = 0.TintAndShade = 0.Váha = xlThinUkončiť sKoniec pod

Objekt tvaru

Na prácu s tvarmi môžete použiť aj objektové premenné.

123456789101112 Sub AddShape ()Dim shp As Shape„vytvorte tvarNastaviť shp = ActiveDocument.Shapes.AddShape (msoShapeSmileyFace, 68,25, 225,75, 136,5, 96#)S SHP„Zmeňte vnútornú farbu a štýl.Fill.ForeColor.RGB = RGB (255, 255, 0).Fill.Solid„uprav úsmev!.Úpravy. Položka (1) = 0,07181Ukončiť sKoniec pod
wave wave wave wave wave