Přejít na hlavní obsah

Jak získat list podle názvu v Excelu VBA

  • Lada Horváthová
  • Praxe

Excel VBA (Visual Basic for Applications) je programovací jazyk, který umožňuje automatizaci akcí v Excelu. Jedním z úkolů, se kterými se vývojáři často setkávají, je získat list v knize podle jejího názvu. Vestavěné funkce aplikace Excel tuto možnost neposkytují, ale pomocí VBA lze tento problém snadno vyřešit. V tomto článku se podíváme na několik způsobů, jak získat listy podle jejich názvů v Excelu VBA.

Prvním způsobem je použití metody Worksheets. Pokud znáte název listu, který potřebujete, můžete použít metodu Worksheets a obrátit se na list podle jeho indexu. Chcete-li například odkazovat na první list v knize, můžete použít následující kód:

Worksheets(1).Select

Použití indexů však může být nepříjemné, zvláště pokud máte v knize mnoho listů nebo pokud měníte pořadí listů. V takovém případě by bylo vhodnější obrátit se na list podle jeho názvu.

Druhým způsobem je použití cyklu. Pokud máte v knize mnoho listů a chcete získat listy s určitými názvy, můžete použít cyklus k přeskupení všech listů v knize a zkontrolovat jejich názvy pomocí podmíněného příkazu. Následující kód například umožňuje získat první list s názvem "Sheet1":

Dim ws As Worksheet

For Each ws In Worksheets

If ws.Name = "Sheet1" Then

ws.Select

Exit For
End If

Next ws

Základy programování VBA

Zde je několik základních programovacích principů na VBA:

  1. Automatizace úkolů. VBA vám umožňuje vytvářet makra, která automaticky provádějí určité akce. Můžete například napsat kód a vytvořit nový list Excelu, zkopírovat data z jedné buňky do druhé nebo vytvořit nový snímek v PowerPointu.
  2. Objektově orientované programování (OOP). VBA podporuje koncept OOP, což znamená, že můžete vytvářet objekty, které obsahují data i operace, které lze na tato data použít.
  3. Využití funkcí a postupů. V VBA můžete vytvářet vlastní funkce a postupy, které mohou být způsobeny z jiných částí vašeho kódu. Funkce vracejí hodnotu a postupy provádějí určité činnosti.
  4. Práce s proměnnými a typy dat. VBA podporuje různé datové typy, jako jsou čísla, řádky a data. Proměnné můžete vytvářet pro ukládání hodnot a pomocí příkazů provádět matematické operace nebo porovnávat hodnoty.
  5. Řízení toku výkonu. Váš kód může obsahovat podmíněné výrazy, jako je if-then-else, pro rozhodování na základě určitých podmínek. Můžete také použít cykly, jako je for nebo while, k opakování určitého bloku kódu několikrát.

Programování na VBA může být velmi výkonným nástrojem pro automatizaci rutinních úkolů a zlepšení výkonu. Pomocí těchto základů si budete moci vytvořit vlastní makra a zjednodušit práci s aplikacemi Office.

Proč potřebujete list názvu v Excelu

Listy podle názvu v Excelu jsou nástrojem, který uživatelům umožňuje odkazovat na požadovaný list v knize podle jeho názvu, nikoli podle pořadového čísla. To je zvláště užitečné v případech, kdy máte v knize mnoho listů a musíte se mezi nimi rychle pohybovat.

Použití titulních listů také činí kód srozumitelnějším a čitelnějším. Místo toho, abyste si zapamatovali pořadová čísla listů nebo si je ručně prohlíželi, můžete jednoduše použít srozumitelné a popisné názvy listů.

Kromě toho se listy podle názvu pohodlně používají při automatizaci úloh pomocí VBA (programovací jazyk Excel). K požadovanému listu v kódu můžete přistupovat pomocí jeho názvu, díky čemuž je Kód flexibilnější a usnadňuje doprovod.

Výhody použití jmenných listů v Excelu:
Rychlý pohyb mezi listy
Srozumitelný a čitelný kód
Flexibilita a snadné použití
Zjednodušení úloh automatizace pomocí VBA

Na závěr, použití titulových listů v Excelu vám dává možnost efektivněji pracovat s více listy v knize, činí váš kód čitelnějším a umožňuje flexibilnější správu dat pomocí VBA.

Příklady použití VBA pro práci s listy

Visual Basic for Applications (VBA) má mnoho metod a vlastností pro práci s listy v Excelu. Níže jsou uvedeny příklady některých z nich:

Metoda / vlastnostPopisPříklad použití
Sheets.AddPřidává do knihy nový listSheets.Add
Sheets (název).DeleteOdstraní uvedený list z knihySheets ("List1").Delete
Sheets.CountVrací počet listů v knizeDim count As Integer count = Sheets.Count
Sheets (název).Cells (řádek, sloupec).ValueVrátí nebo nastaví hodnotu konkrétní buňky na zadaném listuSheets ("List1").Cells(1, 1).Value = "Příklad"
Sheets (název).Range (rozsah).ValueVrátí nebo nastaví hodnotu rozsahu buněk na zadaném listuDim rng As Range

Set rng = Sheets ("List1").Range("A1:B2")

To jsou jen některé z možností VBA pro práci s listy v Excelu. Pomocí těchto a dalších metod a vlastností lze snadno automatizovat rutinní úkoly a efektivně spravovat data v tabulkách.