Vymazať hárok Excel VBA

Do tejto doby všetci vieme, ako odomknúť akýkoľvek hárok. List VBA Delete má rovnaký spôsob písania kódu ako list Unprotect. VBA Delete Sheet, ako už názov napovedá, sa používa na automatické odstránenie vybratého pracovného hárka. Na použitie funkcie VBA Delete na vymazanie každého hárku musíme najprv zistiť, ktorý hárok chceme odstrániť. Funkcia VBA Delete funguje, keď voláme názov hárku alebo postupnosť tohto hárku a potom použijeme funkciu Delete. Nižšie je uvedená syntax listu odstránenia VBA.

Uvedená syntax sa v nasledujúcich príkladoch použije mnohými rôznymi spôsobmi.

Ako odstrániť list v Excel VBA?

Naučíme sa, ako odstrániť hárok v programe Excel pomocou kódu VBA.

Tento príklad listu odstránenia VBA si môžete stiahnuť tu - príklad listu odstránenia VBA

VBA Delete Sheet - Príklad č. 1

V tomto príklade uvidíme jednoduchý spôsob odstránenia akéhokoľvek pracovného hárka. Postupujte podľa nasledujúcich krokov:

Krok 1: Otvorte modul na karte ponuky Vložiť.

Krok 2: Teraz napíšte podkategóriu VBA Delete Sheet. Na definovanie kódu môžeme použiť akékoľvek iné meno.

kód:

 Sub VBA_DeleteSheet () End Sub 

Krok 3: Použite objekt Pracovné hárky a vyberte hárok, ktorý chceme odstrániť. Tu je tento list pomenovaný ako List1 .

kód:

 Sub VBA_DeleteSheet () Pracovné listy („Sheet1“). End Sub 

Krok 4: Teraz použite funkciu Odstrániť za názvom vybraného hárku.

kód:

 Sub VBA_DeleteSheet () Pracovné listy („Sheet1“). Odstrániť Koniec Sub 

Krok 5: Spustite kód stlačením klávesu F5 alebo kliknutím na tlačidlo Prehrať.

Uvidíme, že systém nás vyzve s upozornením, ktoré Excel dokonale odstráni hárok. Pokračujte ďalej kliknutím na Odstrániť .

Krok 6: Uvidíme hárok „List1“ je teraz odstránený.

Krok 7: Predpokladajme, že sa pokúsime odstrániť hárok, ktorý neexistuje, alebo ak napíšeme nesprávny názov. Ďalej som sa pokúsil zadať názov hárku, ktorý sa nenachádza v excelovskom súbore, ako je to znázornené nižšie.

kód:

 Sub VBA_DeleteSheet () Pracovné listy („Sheet2“). Odstrániť Koniec Sub 

Krok 8: Teraz spustite kód. Uvidíme, VBA nám dáva chybu „Dolný index mimo rozsah“, čo znamená, že sme vybrali hárok, ktorý neexistuje.

VBA Delete Sheet - Príklad č. 2

Existuje aj iný spôsob, ako implementovať VBA Delete Sheet. Toto nie je taký malý kód ako metóda, ktorú sme videli v príklade 1. Ale tiež jednoduchý spôsob implementácie. Postupujte podľa nasledujúcich krokov:

Krok 1: Napíšte podprogram postupu VBA Delete, ako je to znázornené nižšie.

kód:

 Sub VBA_DeleteSheet2 () End Sub 

Krok 2: Teraz vyberte premennú pre pracovný hárok s ľubovoľným menom. Tu sme vybrali ExSheet, ako je uvedené nižšie.

kód:

 Sub VBA_DeleteSheet2 () Dim ExSheet As Worksheet End Sub 

Krok 3: Teraz nastavte definovanú premennú pomocou funkcie Pracovné hárky a zadajte názov hárku, ktorý chceme odstrániť. Tu je opäť názov listu „ Sheet1 “.

kód:

 Sub VBA_DeleteSheet2 () Dim ExSheet As Worksheet Set ExSheet = Worksheet ("Sheet1") End Sub 

Krok 4: Teraz definovanú premennú priraďte pomocou funkcie Delete, ako je to znázornené nižšie.

kód:

 Sub VBA_DeleteSheet2 () Dim ExSheet As Worksheet Set ExSheet = Worksheet ("Sheet1") ExSheet.Delete End Sub 

Krok 5: Teraz spustite kód stlačením klávesu F5 alebo kliknutím na tlačidlo Prehrať.

Opäť sa zobrazí výzva, pretože stále chceme pokračovať v mazaní vybraného hárku. Pokračujte kliknutím na Odstrániť .

VBA Delete Sheet - Príklad č. 3

V tomto príklade uvidíme, ako odstrániť hárok, ktorý je aktuálne aktívny. Postupujte podľa nasledujúcich krokov.

Krok 1: Napíšte podprogram postupu odstránenia listu VBA, ako je to znázornené nižšie.

kód:

 Sub VBA_DeleteSheet3 () End Sub 

Krok 2: Na vyhlásenie premennej ako pracovný hárok použite rovnaký riadok kódu, ako je uvedené nižšie, ktoré sme použili vo vyššie uvedených príkladoch.

kód:

 Sub VBA_DeleteSheet3 () Dim ExSheet As Worksheet End Sub 

Krok 3: Teraz otvorte slučku For Next, ako je to znázornené nižšie.

kód:

 Sub VBA_DeleteSheet3 () Dim ExSheet As Worksheet for Next ExSheet End Sub 

Krok 4: Teraz vyberieme aktívny aktuálny pracovný hárok zo všetkých pracovných hárkov dostupných v zošite programu Excel.

kód:

 Sub VBA_DeleteSheet3 () Dim ExSheet ako hárok pre každú ExSheet v ActiveWorkbook.Worksheets Next ExSheet End Sub Sub 

Krok 5: Po výbere aktuálne otvoreného pracovného hárka použijeme funkciu Delete s premennou ExSheet na jeho odstránenie.

kód:

 Sub VBA_DeleteSheet3 () Dim ExSheet ako hárok pre každú ExSheet v ActiveWorkbook.Worksheets ExSheet.Delete Next ExSheet End Sub Sub 

Krok 6: Teraz skompilujte kód a spustite ho, ak sa nenájde žiadna chyba. Týmto sa odstráni aktívny pracovný hárok z otvoreného zošita, ktorý je vybratý.

VBA Delete Sheet - Príklad č. 4

Kód, ktorý sme videli v príklade 3, je možné vidieť ešte jedným spôsobom. Môžeme použiť If End If Loop spolu s cyklom For Next.

Krok 1: Pozrime sa len na rovnaký kód, aký sme videli v príklade 3 vyššie.

kód:

 Sub VBA_DeleteSheet4 () Dim ExSheet ako hárok pre každú ExSheet v ActiveWorkbook.Worksheets ExSheet.Delete Next ExSheet End Sub Sub 

Krok 2: Tento kód odstráni hárok, ktorý je aktuálne aktívny. Čo ak tento stav zlepšíme výberom hárku, ktorý je momentálne aktívny a má presne rovnaké meno? Áno, z tohto dôvodu musíme otvoriť If End If loop, kde napíšeme podmienku hneď za For loop.

kód:

 Sub VBA_DeleteSheet4 () Dim ExSheet ako pracovný hárok pre každý exSheet v ActiveWorkbook.Worksheet If ExSheet.Delete End Ak ďalší ExSheet End Sub 

Krok 3: Teraz napíšte podmienku do If loop, ako keby bol názov hárku v premennej ExSheet rovnaký a presný ako “ Sheet1 ” (alebo akýkoľvek iný názov hárku), potom tento hárok vymažte pomocou premennej ExSheet.

kód:

 Sub VBA_DeleteSheet4 () Dim ExSheet ako hárok pre každú ExSheet v ActiveWorkbook.Worksheet If ExSheet.Name "Sheet1" Then ExSheet.Delete End Ak Next ExSheet End Sub 

Krok 4: Môžeme tu zostaviť kód, pretože existuje mnoho krokov. Potom spustite kód.

Opäť dostaneme rýchlu správu, na ktorej stále chceme tento hárok odstrániť alebo nie. Kliknutím na Vymazať vymažete vybraný hárok.

Výhody listu Excel VBA na odstránenie

  • Je to veľmi užitočné, keď máme v rôznych hárkoch obrovské množstvo údajov, ktoré je potrebné po dokončení úlohy pomerne často odstrániť.
  • Kód uvedený v príklade 1 je najjednoduchší kód.
  • Môžeme dokonca vybrať viac ako jeden hárok, ktorý chceme odstrániť.

Čo je potrebné pamätať

  • Môžeme zvoliť aj poradie hárku namiesto názvu hárka, ktoré chceme odstrániť.
  • Dôvodom získania upozornenia pred odstránením hárku je, že program Excel nás vyzve, aby sme skontrolovali, či existujú nejaké údaje, ktoré nechceme stratiť.
  • Po dokončení kódovania uložte súbor programu Excel do formátu Makro, ktorý umožňuje formát Excel, aby nedošlo k strate napísaného kódu.

Odporúčané články

Toto je príručka pre VBA Delete Sheet. Tu diskutujeme o tom, ako odstrániť list v programe Excel VBA spolu s praktickými príkladmi a šablónou Excel na stiahnutie. Môžete si tiež prečítať naše ďalšie navrhované články -

  1. Zbierka VBA (príklady)
  2. Výkazy VBA IF | Šablóny programu Excel
  3. Ako používať funkciu zoradenia Excel VBA?
  4. VBA počas slučky (príklady so šablónou programu Excel)
  5. VBA Environ

Kategórie: