Obsah
Tento článek je součástí mého seriálu: Excel VBA & amp; Makra - kompletní průvodce krok za krokem . Probereme seznam pouze 10 nejčastěji používaných objektů Excel VBA.
Stáhnout cvičebnici
Stáhněte si tento cvičební sešit a procvičujte si při čtení tohoto článku.
Objekty VBA.xlsmCo jsou objekty VBA?
. Objekt je příkaz nebo něco, co se použije v kódu VBA k provádění určitých úkolů.
Na stránkách VBA (Visual Basic Application) je objektově orientovaný programovací jazyk. Objekt je jedním z prvků VBA.
Objekt má svou vlastnost a metodu. Metoda je operace prováděná tímto objektem a vlastnost vysvětluje vlastnosti tohoto objektu.
Atributy objektů VBA
Aby bylo možné použít objekt VBA, musí v něm být metoda nebo vlastnost. O těchto vlastnostech zde budeme hovořit.
Vlastnosti
Vlastnosti objektu VBA lze považovat za nastavení objektů.Excel má mnoho objektů. Většina objektů v Excelu VBA, se kterými pracujeme, má vlastnosti.
Příklad:
- Objekt Range má vlastnosti. Některé z nich jsou Sloupec , Vzorec , Řádek , Šířka a Hodnota .
- A Graf objekt má vlastnosti, jako jsou Legenda , ChartArea , ChartStyle a tak dále.
- ChartTitle je také objekt s vlastnostmi jako Písmo , Formát a Hranice .
Použití vlastností objektů VBA:
Můžeme napsat kód VBA, který provede následující:
- Můžete prozkoumat aktuální nastavení vlastností objektu a na základě těchto nastavení něco provést.
- Nastavení vlastností objektu můžete změnit zadáním nových hodnot.
Podívejte se na tento příkaz VBA:
Range("E10").Value
V tomto prohlášení, Rozsah je objekt, Hodnota je jednou z vlastností. V příkazu VBA jsou objekty a vlastnosti umístěny vedle sebe a odděleny tečkou ( a tečka, . ). Nejprve se umístí objekty a poté jejich vlastnosti.
Následující příkaz VBA například nastaví hodnotu Hodnota vlastnost Rozsah E10:100 .
Range("E10").Value = 100
Tento příkaz způsobí, že počet 100 zobrazit v Buňka E10 .
Metody:
A metoda je akce implementovaná na objektu.Objekty mají také metody, Rozsah objekty mají Přehledně Následující příkaz VBA vymaže metodu Rozsah Tento příkaz je ekvivalentní výběru Rozsah a pak zvolíte Domů ➪ Úpravy ➪ Vymazat ➪ Vymazat vše :
Range("A10:C20").Clear
V kódu VBA se metody podobají vlastnostem. Metody jsou k objektům připojeny pomocí oddělovacího operátoru (.). Metody a vlastnosti jsou však ve VBA odlišné pojmy.
Přečtěte si více: Graf aplikace Excel zmizí, když jsou data skryta (3 řešení)
Seznam 10 nejčastěji používaných objektů VBA v aplikaci Excel
V případě objektů existuje hierarchie, kterou Excel dodržuje, a to:
Aplikace → Sešit → Pracovní list → Rozsah
Zde se budeme podrobně zabývat seznamem nejčastěji používaných objektů aplikace Excel VBA.
1. Objekt aplikace
Na stránkách Aplikace Objekt je jedním z nejpoužívanějších objektů aplikace Excel. Slouží k reprezentaci celé aplikace Excel.
Metody | Vlastnosti |
---|---|
Výpočet | ActiveCell |
CalculateFull | ActiveSheet |
InputBox | ActiveWindow |
Ukončit | ActiveWorkbook |
Spustit | DisplayScrollBars |
Zrušit | DisplayFormulaBar |
Počkejte | Cesta |
StatusBar |
Při použití tohoto objektu v aplikaci Excel musíme přidat požadovanou vlastnost nebo metodu.
Příklad 1:
Zde jsme použili Výpočet Toto makro se používá pro výpočet všech otevřených sešitů.
Sub Calculate_All_Opened_Workbooks() Application.Calculate End Sub
Příklad 2:
V níže uvedeném příkladu jsme použili DisplayScrollBars vlastnost s Aplikace Účelem tohoto makra je skrýt posuvník.
Sub Hide_Status_Bar() Application.DisplayScrollBars = False End Sub
Zde uvedeme stav False , což znamená, že se nezobrazí posuvníky listu aplikace Excel.
Přečtěte si více: Jak otevřít sešit z cesty pomocí aplikace Excel VBA (4 příklady)
2. Objekt Sešity
Pracovní sešity Objekt souvisí se sešitem. Označuje seznam aktuálně otevřených sešitů v aplikaci Excel.
Metody | Vlastnosti |
---|---|
Přidat | Aplikace |
CheckOut | Hrabě |
Zavřít | Tvůrce |
Otevřít | Položka |
Rodič |
Příklad 1:
Zde jsme použili jednoduchý kód VBA založený na objektu Sešity, který zavře sešit aplikace Excel.
Sub Close_All_Opened_Workbooks() Sešity.Close End Sub
Příklad 2:
Tento příklad přidá novou proměnnou page_1 na Disney.xlsx pracovní sešit.
Sub Add_Variable_to_Specific_Workbook() Set page_1 = Workbooks.Item("Disney.xlsx") End Sub
3. Objekt sešitu
Na stránkách Pracovní sešit objekt představuje jeden sešit. Je členem skupiny Pracovní sešity které jsou právě aktivní nebo otevřené. sešit je spíše kolekce pracovních listů.
Metody | Vlastnosti |
---|---|
Aktivní | ActiveChart |
AddToFavourite | ActiveSheet |
Zavřít | AutoSaveOn |
DeleteNumberFormat | Celé jméno |
Uložit | UserStatus |
SaveAs |
Příklad 1:
Chceme zavřít aktuální sešit.
Sub Close_Single_Workbook() ActiveWorkbook.Close End Sub
Podobný kód jsme použili i na zavření sešitu. Objekt Sešity se použije na všechny otevřené sešity. Objekt Sešity se však použije pouze na aktivní sešit.
Příklad 2:
V tomto příkladu pojmenujeme buňku pomocí příkazu Pracovní sešit objekt.
Sub Name_A_Cell() ActiveWorkbook.Names.Add Name:="myName", RefersToR1C1:="=List1!R5C5" End Sub
4. Listy Objekt
Na stránkách Listy objekt se vztahuje ke všem druhům listů zadaného nebo aktivního sešitu aplikace Excel. Listy mohou to být pracovní listy, tabulky mikrolistů.
Metody | Vlastnosti |
---|---|
Přidat | Aplikace |
Přidat2 | Hrabě |
Kopírovat | Položka |
Odstranit | Rodič |
Přesun | Viditelné |
PrintOut | |
PrintPreview | |
VybratVypočítat |
Příklad 1:
Tento kód VBA aktivuje 2. listu sešitu.
Sub Activate_Workbook() Worksheets(2).Activate End Sub
Příklad 2:
V tomto příkladu přidáme nový list za list 1. list.
Sub Add_New_Sheet() Sheets.Add after:=Sheets(1) End Sub
5. Objekt pracovních listů
Tento Pracovní listy objekt je součástí Listy Jedná se o kolekci pouze pracovních listů. Ale objekt Listy Objekt zahrnuje také tabulky a mikroarchivy.
Metody | Vlastnosti |
---|---|
Kopírovat | Aplikace |
Odstranit | Hrabě |
Přesun | Tvůrce |
PrintOut | Položka |
PrintPreview | Rodič |
Vyberte | Viditelné |
Přidat | |
Přidat2 |
Příklad 1:
Aktivuje se 2. pracovní list následujícího sešitu
Sub Activate_Worksheet() Worksheets(2).Activate End Sub
Můžeme také použít Listy ale pokud použijeme objekt Listy objekt, který může aktivovat graf nebo mikrolist, závisí také na umístění zadaného sešitu.
Příklad 2:
Zkopírujeme list na požadované místo v sešitě.
Sub Copy_A_Worksheet() Worksheets("Disney").Copy Before:=Worksheets("Sheet1") End Sub
Podobná čtení
- 22 příkladů maker v aplikaci Excel VBA
- 20 praktických tipů pro kódování, jak zvládnout Excel VBA
- Jak psát kód VBA v aplikaci Excel (ve snadných krocích)
- Typy maker VBA v aplikaci Excel (stručný průvodce)
- Úvod do funkcí a aplikací VBA
6. Objekt pracovního listu
Na stránkách Pracovní list objekt je součástí Pracovní listy . Představuje pouze jeden pracovní list. V této části bude uveden ukázkový kód VBA založený na příkladu Pracovní list objekt, který přejmenuje pracovní list.
Metody | Vlastnosti |
---|---|
Aktivace | Aplikace |
Výpočet | Buňky |
CheckSpelling | Sloupce |
Kopírovat | Komentáře |
Odstranit | Název |
Vyhodnocení | Další |
Přesun | Náčrt |
Vložit | PageSetup |
PasteSpecial | Rodič |
PrintOut | Rozsah |
PrintPreview | Řádky |
SaveAs | Tvary |
Vyberte | Třídit |
Karta | |
Typ | |
Viditelné |
Příklad 1:
Po použití tohoto kódu VBA se změní název aktivního pracovního listu.
Sub Rename_A_Worksheet() ActiveSheet.Name = "Data Set -2" End Sub
Příklad 2:
Chceme zjistit informace o aktuálním pracovním listu. Použijte následující kód VBA.
Sub Show_Worksheet_Name() MsgBox ActiveSheet.Name End Sub
7. Objekt rozsahu
Na stránkách Rozsah Objekt se vztahuje k buňkám souboru Excelu. Používá se k výběru jedné buňky, řádku, sloupce nebo určitého počtu buněk, řádků nebo sloupců z pracovního listu Excelu. Do argumentu musíme uvést odkaz na buňku.
Metody | Vlastnosti |
---|---|
Aktivace | Adresa |
Automatické vyplňování | Aplikace |
Výpočet | Oblasti |
Přehledně | Buňky |
Kopírovat | Sloupec |
Odstranit | Hrabě |
Najít | Konec |
Vložte | Písmo |
PasteSpecial | Výška |
Vyměňte stránky | Položka |
Spustit | Vlevo |
Vyberte | ListObject |
Zobrazit | Název |
Třídit | Další |
Tabulka | Rodič |
Rozsah | |
Řádek | |
Řádky | |
Nahoru | |
Ověřování | |
Hodnota | |
Šířka |
Příklad 1:
Toto je ukázkový kód VBA, který vybírá buňky rozsahu B5:D5 .
Sub Select_A_Range() Range("B5:D5").Select End Sub
Příklad 2:
Tento příklad zkopíruje určitý rozsah z aktivního listu.
Sub Copy_A_Range1() Range("A1:E1").Copy End Sub
8. Objekt Shapes
Na stránkách Tvary Objekt se vztahuje ke všem tvarům, které existují v pracovním listu. Pomocí tohoto objektu můžeme vybírat a odstraňovat nebo provádět jiné úlohy.
Metody | Vlastnosti |
---|---|
AddCallout | Aplikace |
AddConnector | Hrabě |
AddLine | Tvůrce |
AddPicture | Rodič |
AddShape | Rozsah |
Položka | |
SelectAll |
Příklad 1:
Tento kód VBA vybere všechny druhy tvarů z pracovního listu.
Sub All_Shapes_of_A_Worksheet() ActiveSheet.Shapes.SelectAll End Sub
Příklad 2:
V tomto příkladu použijeme požadovanou akci na existující tvary aktivního listu.
Sub Apply_A_Procedure_on_Shapes() ActiveSheet.Shapes(1).OnAction = "ShapeClick" End Sub
9. Objekt tvaru
Na stránkách Tvar je součástí objektu Shapes. Označuje jeden tvar v aktivním pracovním listu. Používá se spolu s objektem Tvary objekt.
Metody | Vlastnosti |
---|---|
Použít | Aplikace |
Kopírovat | AutoShapeType |
Střih | BackgroundStyle |
Odstranit | Graf |
Duplikát | Konektor |
Vyberte | Naplňte |
Výška | |
Vlevo | |
Název | |
OnAction | |
Rodič | |
Reflexe | |
Název | |
Nahoru | |
Typ | |
Viditelné | |
Šířka |
Příklad:
Tento jednoduchý kód VBA se použije k vytvoření hvězdy s 5 hrany.
Sub Create_A_Shape() ActiveSheet.Shapes.AddShape msoShape5pointStar, 300, 100, 60, 60 End Sub
Změnou příkazu msoShape5pointStar můžeme nakreslit libovolný tvar.
10. Objekt ListObject
ListObject je součástí Objekt ListObjects . A ListObject označuje jednu tabulku pracovního listu.
Metody | Vlastnosti |
---|---|
Odstranit | Aktivní |
Zveřejnit | Aplikace |
Obnovit | Automatický filtr |
Změna velikosti | Komentář: |
Tvůrce | |
Název | |
Rodič | |
Rozsah | |
Třídit | |
Souhrn |
Příklad:
Tento příklad slouží k získání dat z tabulky a jejich uložení do pole.
Sub Store_Data_From_Table_To_Array() Dim D_Table As ListObject Dim D_Array As Variant Dim N As Long Set D_Table = ActiveSheet.ListObjects("My_Data") D_Array = D_Table.DataBodyRange For N = LBound(D_Array) To UBound(D_Array) Debug.Print D_Array(N, 2) Next N End Sub
Přečtěte si více: Naplnění pole Excel VBA hodnotami buněk (4 vhodné příklady)
Závěr
V tomto článku jsme popsali seznam běžně používaných objektů Excel VBA. Doufám, že to uspokojí vaše potřeby. Podívejte se prosím na naše webové stránky. ExcelWIKI.com a napište své návrhy do komentářů.