Pracovní listy VBA - Jak používat objekt listu ve VBA?

Pracovní listy aplikace Excel VBA

Excel je sešit a v tomto sešitu obsahuje listy nebo listy. Je velmi důležité porozumět konceptu pracovních listů ve VBA, protože po celou dobu pracujeme s pracovními listy. V normálním souboru aplikace Excel jej nazýváme listy, ale v terminologii VBA se nazývá „list“. Všechny sbírky pracovního listu se nazývají „Pracovní listy“.

Ve VBA je list objekt. Existují dva způsoby, jak na list odkazovat: jeden pomocí objektu „List“ a druhý pomocí objektu „Listy“.

Vím, že vaše otázka zní, jaký je mezi nimi rozdíl. V aplikaci Excel můžeme vidět dva druhy listů, jeden je běžný list a druhý je list s grafy.

Karta listu v aplikaci Excel zohledňuje pouze listy v sešitu, kromě listů s grafy. „Listy“ zohledňují všechny listy v sešitu, včetně listu s grafem. Podívejte se například na obrázek níže.

Nahoře máme celkem 5 listů. Z těchto 5 listů jsou 3 listy a 2 listy s grafy.

Zde je počet „pracovních listů“ 3 a počet „listů“ 2.

Nyní se podívejte na obrázek níže.

Zde jsou všechny listy pracovní listy, takže počet „pracovních listů“ a „listů“ je 3.

Takže jako součást kódu, pokud chcete použít listy, si objekty pamatují tento bod.

Syntaxe pracovních listů VBA

Jak jsem řekl, list je proměnná objektu. To však má také syntaxi.

Index není nic, co je číslem listu, na který odkazujeme. Jak vidíte na konci, označuje se jako Object.

Například Worksheet (1). Select means to select the first worksheet of the workbook. Nezáleží na tom, jaký je název listu; bude vybrán jakýkoli list vložený jako první do sešitu.

Můžeme také odkazovat na list podle jeho názvu. Musíme uvést úplnost, protože se jedná o název listu v uvozovkách.

Například pracovní list („Prodejní list“). Výběr znamená výběr listu s názvem „Prodejní list“. Zde nezáleží na tom, jaké je číslo listu, vždy vybere zadaný list.

Jak používat objekt pracovních listů ve VBA?

Příklad č. 1

Předpokládejme například, že máte v sešitu celkem 5 listů a názvy těchto listů jsou „Pracovní list 1“, „Pracovní list 2“, „Pracovní list 3“, „Grafický list 1“ a „Grafický list 2“.

Pokud k výběru listu použiji číslování, mohu číslo použít jako odkaz na list.

Pracovní list (2). Vybrat znamená, že vybere druhý list sešitu.

Kód:

Sub Worksheet_Example1 () Worksheets (2). Vyberte End Sub

Spustím tento kód pomocí klávesy F5 nebo ručně a uvidím výsledek.

Nyní změním číslo listu na 3.

Kód:

Sub Worksheet_Example1 () Worksheets (3). Vyberte End Sub

Nyní se podívejte, co se stane, když spustíte kód ručně nebo pomocí kódu klávesy F5.

Pokud se podíváte na výše uvedený obrázek, vybral jsem 4. list, když jsem požádal o výběr třetího listu.

Je to proto, že jsem použil objekt listu, ne objekt Listy. Jak jsem již řekl, objekt „Pracovní listy“ bere v úvahu pouze pracovní listy, nikoli listy grafů.

Chcete-li vybrat třetí list ze všech listů v sešitu, použijte objekt Listy.

Kód:

Dílčí list_Příklad1 ()

Listy (3). Vyberte

End Sub

Nyní vybere přesný třetí list.

Příklad č. 2 - Vyberte pracovní listy podle názvu

Výběr listů podle jejich názvu je přesný způsob odkazu na list. Pokud například chceme vybrat list „List 3“, můžete použít následující kód.

Kód:

Sub Worksheet_Example2 () Worksheets ("Worksheet 3"). Vyberte End Sub

Tím vyberete přesný list; nezáleží na tom, kde je v sešitu umístěn.

Pokud jste se ale pokusili získat přístup k listu s objektem „Listy“, zobrazí se „Chyba indexu mimo rozsah“.

Kód:

Sub Worksheet_Example2 () Worksheets ("Chart Sheet 1"). Vyberte End Sub

Spusťte tento kód pomocí klávesy F5 nebo ručně a podívejte se na výsledek.

Příklad č. 3 - Problém s názvem pracovního listu

Existuje ještě jeden problém s odkazováním na listy podle názvu. Pokud někdo změní název listu, opět se zobrazí „Chyba dolního indexu mimo rozsah“.

Chcete-li tento problém vyřešit, přejděte do editoru jazyka Visual Basic stisknutím klávesy ALT + F11 .

Nyní vyberte název listu a stisknutím klávesy F4 zobrazte okno vlastností.

V těchto vlastnostech okno změní název listu na vaše jméno.

Jedna zajímavá věc je, že i když jsme změnili název listu z „List 1“ na „WS1“, můžeme v sešitu stále vidět stejný název.

Nyní můžeme tento list označit názvem „WS1“.

Kód:

Sub Worksheet_Example2 () Worksheets ("WS1"). Vyberte End Sub

Nyní nezáleží na tom, kdo změní název listu. Náš kód stále odkazuje na stejný list, pokud se nemění v editoru jazyka Visual Basic.

Příklad č. 4 - Získejte počet celkových listů v sešitu

List je objekt a můžeme s ním používat všechny vlastnosti a metody. Co děláme s pracovními listy?

Vkládáme listy. Pracovní listy přejmenováváme. Odstraňujeme pracovní listy a mnoho dalších věcí, které s nimi děláme.

Zadejte objekt „Pracovní listy“ a vložte tečku, abyste si mohli prohlédnout všechny možnosti.

Chcete-li získat počet listů, používá vlastnost VBA Count.

Kód:

Sub Worksheet_Example3 () Dim i As Long i = Worksheets.Count MsgBox i End Sub

Zobrazí se počet listů.

I když existuje 5 listů, dostali jsme počet jako 3, protože další 2 listy jsou listy grafů.

Chcete-li získat celkový počet listů, použijte objekt „Listy“.

Kód:

Sub Worksheet_Example3 () Dim i As Long i = Sheets.Count MsgBox i End Sub

Zobrazí se celkový počet listů.

Příklad č. 5 - Metody použití objektu listu

Po zadání objektu listu můžeme přistupovat ke všem vlastnostem a objektům, které jsou s ním spojené. Můžeme přidat nový list. Můžeme smazat atd.

Chcete-li přidat nový list.

Pracovní list. Přidat

Odstranění listu

Pracovní list („Název listu“). Smazat

Chcete-li změnit název listu

Pracovní list („Název listu“). Název = „Nový název“

Zajímavé články...