Tento tutoriál vás naučí, ako odstrániť alebo vymazať list pomocou VBA.
Odstrániť pracovný list
Na odstránenie pracovného hárka použite príkaz odstrániť.
Odstráňte pracovný hárok podľa názvu
1 | Tabuľky („List1“). Odstrániť |
Odstráňte pracovný list podľa indexového čísla
Tento kód odstráni prvý pracovný hárok v zošite:
1 | Listy (1). Vymazať |
Tento kód odstráni posledný pracovný hárok v zošite:
1 | Tabuľky (Sheets.Count). Vymazať |
Odstrániť pracovný list bez výzvy
Keď sa pokúsite odstrániť pracovný hárok, Excel vás požiada o potvrdenie vašej akcie:
Tieto výzvy (upozornenia) môžete vypnúť prepnutím DisplayAlerts:
123 | Application.DisplayAlerts = FalseTabuľky („List1“). OdstrániťApplication.DisplayAlerts = Pravda |
Odstrániť hárok, ak existuje
Ak sa pokúsite odstrániť hárok, ktorý neexistuje, VBA vygeneruje chybu. Pomocou funkcie Pri chybe Pokračovať ďalej môžete VBA povedať, aby hárok odstránil, ak existuje, v opačnom prípade preskočte na nasledujúci riadok kódu:
123 | Pri chybe Pokračovať ďalejTabuľky („List1“). OdstrániťPri chybe GoTo 0 |
Môžete tiež použiť našu funkciu RangeExists a skontrolovať, či hárok existuje, a ak áno, odstrániť ho .:
123 | Ak RangeExists ("Sheet1") ThenTabuľky („List1“). OdstrániťKoniec Ak |
Čistý list
Tento kód vymaže celý hárok obsahu, formátov a všetkého ostatného:
1 | Listy („List1“). Bunky. Vymazať |
Vymazať obsah listu
Tento kód vymaže celý obsah hárka. Formátovanie, komentáre a všetko ostatné nechá na pokoji:
1 | Tabuľky („List1“). Bunky. Jasný obsah |
Clear Sheet UsedRange
Vyššie uvedené príklady vymažú VŠETKY bunky v hárku. Pri veľkých listoch to môže byť veľmi náročné na čas. Ak namiesto toho použijete UsedRange, VBA vymaže iba „použité“ bunky, ktoré obsahujú hodnoty, formáty atď.
1 | Listy („List1“). UsedRange.Clear |