VBA odstranit nebo vymazat list

Tento tutoriál vás naučí, jak odstranit nebo vymazat list pomocí VBA.

Odstranit pracovní list

K odstranění listu použijte příkaz delete.

Odstranit list podle názvu

1 Tabulky („List1“). Smazat

Odstranit list podle indexového čísla

Tento kód odstraní první list v sešitu:

1 Listy (1). Smazat

Tento kód odstraní poslední list v sešitu:

1 Listy (Sheets.Count). Odstranit

Smazat list bez výzvy

Když se pokusíte odstranit list, Excel vás požádá o potvrzení vaší akce:

Tyto výzvy (výstrahy) můžete deaktivovat přepnutím DisplayAlerts:

123 Application.DisplayAlerts = FalseTabulky („List1“). SmazatApplication.DisplayAlerts = True

Smazat list, pokud existuje

Pokud se pokusíte odstranit list, který neexistuje, VBA vygeneruje chybu. Pomocí On Error Resume Next můžete VBA říci, aby list odstranil, pokud existuje, v opačném případě přeskočte na další řádek kódu:

123 Při chybě Pokračovat DalšíTabulky („List1“). SmazatPři chybě GoTo 0

Můžete také použít naši funkci RangeExists a zkontrolovat, zda list existuje, a pokud ano, smazat ho:

123 Pokud RangeExists ("Sheet1") ThenTabulky („List1“). SmazatKonec If

Čistý list

Tento kód vymaže celý list obsahu, formátů a všeho dalšího:

1 Listy („List1“). Buňky. Vymazat

Vymazat obsah listu

Tento kód vymaže celý obsah listu. Formátování, komentáře a vše ostatní ponechá na pokoji:

1 Listy („List1“). Cells.ClearContents

Clear Sheet UsedRange

Výše uvedené příklady vymaže VŠECHNY buňky v listu. Ve velkých listech to může být velmi časově náročné. Pokud místo toho použijete UsedRange, VBA vymaže pouze „použité“ buňky, které obsahují hodnoty, formáty atd.

1 Listy („List1“). UsedRange.Clear
wave wave wave wave wave