Objekty VBA

Obsah

Objekty aplikace Excel VBA odkazují na jednotlivé „entity“ tvořené kódem a daty. Samotná aplikace Excel je objekt, stejně jako sešity, pracovní listy, rozsahy buněk a tvary. Každý objekt má přidružené vlastnosti a metody. Objekty mohou také obsahovat jiné objekty a objekt sbírek slouží ke odkazování na skupinu stejných objektů aplikace Excel.

V tomto kurzu se podíváme na některé běžně používané objekty aplikace Excel.

Objekt aplikace

Objekt aplikace odkazuje na celou aplikaci Excel. Objekt Application obsahuje objekt sešitu.

Následující kód používá vlastnost WindowState objektu Application k nastavení okna aplikace Excel na maximální dostupnou velikost:

12345 Dílčí maximalizaceTheExcelWindow ()Application.WindowState = xlMaximizedEnd Sub

Objekt sešitů

Objekt Sešity odkazuje na kolekci všech aktuálně otevřených excelových sešitů.

Následující kód používá metodu Workbooks.Add k vytvoření nového sešitu a přidání do kolekce:

12345 Přidání dílčího díluSešity. PřidatEnd Sub

K jednotlivému sešitu v kolekci Sešity můžete přistupovat prostřednictvím jeho indexového čísla nebo názvu. Můžete tedy použít sešit nazvaný ExcelWb pomocí sešitů („ExcelWB“).

Objekt sešitu

Objekt sešitu je součástí kolekce Sešity. Objekt sešitu obsahuje kolekci listů (pracovní listy) a kolekci listů (pracovní listy, grafy a makra). Objekt ActiveWorkbook odkazuje na aktivní sešit.

Následující kód používá k uložení aktuálního aktivního sešitu metodu ActiveWorkbook.Save:

12345 Dílčí uložení pracovní knihy ()ActiveWorkbook.SaveEnd Sub

Listy Objekt

Objekt listy odkazuje na shromažďování všech listů, listů grafů a maker v sešitu. Následující kód používá Sheets.Add metodu k přidání nového listu s názvem ExtraSheet po posledním listu v sešitu:

123456 SubAddingANewSheet ()ActiveWorkbook.Sheets.Add (Po: = ActiveWorkbook.Worksheets (Worksheets.Count), počet: = 1, _Typ: = xlWorksheet) .Name = "ExtraSheet"End Sub

Všimněte si syntaxe metody Sheets.Add je:
Sheets.Add (Před, Po, Počet, Typ) kde:

-Before je volitelný a určuje, že nový list by měl být přidán před existující list.

-After je volitelný a určuje, že nový list by měl být přidán za existující list.

-Count je volitelný a určuje počet listů, které se mají přidat.

-Typ je volitelný a určuje typ listu. xlWorksheet by přidal nový list, xlChart by přidal nový list s grafem a xlExcel4MacroSheet nebo xlExcel4IntlMacroSheet by přidal nový makro list. Pokud je prázdné, použije se výchozí xlWorksheet.

K jednotlivému listu v kolekci Listů můžete přistupovat prostřednictvím jeho indexového čísla nebo názvu. Můžete se tedy podívat na pracovní list s názvem SheetOne pomocí Tabulek („SheetOne“).

Pracovní listy Objekt

Objekt Listy odkazuje na shromažďování všech listů v sešitu. Následující kód používá k přidání nového listu metodu Worksheets.Add:

12345 SubAddingANewSheet ()Pracovní listy.PřidatEnd Sub

K jednotlivému listu v kolekci pracovních listů můžete přistupovat prostřednictvím jeho indexového čísla nebo názvu. Můžete se tedy podívat na pracovní list s názvem SheetTwo pomocí pracovních listů („SheetTwo“).

Objekt listu

Objekt listu je součástí kolekce Listy. Objekt listu obsahuje objekt rozsahu a další objekty. Objekt ActiveSheet odkazuje na list, který je aktivní.

Následující kód mění orientaci stránky aktivního listu na šířku:

12345 Dílčí změnaOrientationToLandscape ()ActiveSheet.PageSetup.Orientation = xlLandscapeEnd Sub

Objekt Sheet obsahuje objekt PageSetup a jeho orientační vlastnost je nastavena na xlLandscape.

Objekt rozsahu

Objekt Range může odkazovat na jednu buňku nebo sadu buněk v listu. Následující kód ukazuje, jak použít metodu Range.Select k výběru buněk A1: B1:

12345 Dílčí výběr ARange ()Rozsah („A1: B1“). VyberteEnd Sub

Tvary Objekt

Objekt Shapes odkazuje na shromažďování všech tvarů v listu. Následující kód by vybral všechny tvary na ActiveSheet:

12345 Dílčí výběr AllTheShapes ()ActiveSheet.Shapes.SelectAllEnd Sub

Objekt tvaru

Objekt Shape je součástí kolekce Shapes. Následující kód by vytvořil zaoblený obdélníkový tvar a poté nastavil vlastnost name objektu shape:

123456789 Sub UsingTheShapeObject ()S pracovními listy (1) .Shapes.AddShape (msoShapeRoundedRectangle, _200, 100, 80, 80).Name = "Zaoblený obdélník"Konec sEnd Sub

Objektový model Excel VBA

Objektový model VBA aplikace Excel popisuje hierarchii všech objektů, které můžete v Excelu použít. Objekt Sešity můžete například použít k nepřímému nebo přímému odkazování na všechny ostatní objekty. Následující kód ukazuje, jak vybrat buňku A1 pomocí hierarchické struktury:

12345 Dílčí používáníTheHierachicalStructure ()Sešity („Kniha1“). Pracovní listy („List1“). Rozsah („A1“). VyberteEnd Sub

Deklarace a přiřazení proměnné objektu

Objekt můžete deklarovat a přiřadit proměnné pomocí klíčových slov Dim a Set.

Například:

12 Dim ws jako listNastavit ws = ActiveWorkbook.ActiveSheet

Následující kód ukazuje, jak deklarovat a přiřadit objekt Range proměnné:

12345678910111213141516 Sub AssigningARangeToAVariable ()Dim rngOne jako objektNastavit rngOne = rozsah ("A1: C1")rngOne.Font.Bold = TrueS rngOne.Font.Bold = True.Font.Name = "Calibri".Font.Size = 9.Font.Color = RGB (35, 78, 125).Interior.Color = RGB (205, 224, 180).Borders (xlEdgeBottom) .LineStyle = xlContinuousKonec sEnd Sub

Výsledek je:

Je důležité pochopit, jak objekty fungují pro zvládnutí VBA. Můžete se dozvědět více s naším Interaktivním výukovým programem VBA.

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave