VBA Poista arkki | Kuinka poistaa laskentataulukko VBA-koodilla?

Excel VBA Poista taulukko

Voit poistaa taulukon VBA: ssa poistamalla laskentataulukon menetelmän. Tämän menetelmän soveltamiseksi meidän on ensin tunnistettava poistettava taulukko kutsumalla arkin nimeä. Meillä on kaksi tapaa tehdä sama, ensin kirjoitamme suoraan sheet1.delete ja toinen menetelmä on sheet (sheet1) .delete.

Joten syntaksia seuraa.

Laskentataulukot ("Taulukon nimi"). Poista

TAI

Arkit ("Arkin nimi"). Poista

Joten, ensin meidän täytyy määrittää levyn nimeä käyttämällä joko Worksheet tai Sheets Object, myöhemmin voimme käyttää ”Poista” menetelmällä.

Kuinka poistaa Excel-taulukot VBA-koodilla?

Voit ladata tämän VBA Delete Sheet Excel -mallin täältä - VBA Delete Sheet Excel -malli

Esimerkki # 1 - Poista laskentataulukko käyttämällä sen nimeä

Oletetaan, että sinulla on useita taulukoita ja tietyn laskentataulukon poistamiseksi meidän on mainittava laskentataulukko sen nimellä. Minulla on esimerkiksi 3 erilaista arkkia nimeltä "Myynti 2016", "Myynti 2017" ja "Myynti 2018".

Jos haluan poistaa taulukon nimeltä " Myynti 2017 ", minun on mainittava arkin nimi kuten alla.

Koodi:

Sub Delete_Example1 () laskentataulukot ("taulukot 2017"). End Sub

Laskentataulukon nimen mainitsemisen ongelmana emme näe VBA: n IntelliSense-luetteloa. Mainitse menetelmä joka tapauksessa nimellä " Poista ".

Koodi:

Sub Delete_Example1 () laskentataulukot ("taulukot 2017"). Poista End Sub

Joten tämä poistaa " Myynti 2017 " -nimisen taulukon .

Virhe laskentataulukkoa poistettaessa : Jos yritämme poistaa laskentataulukon, jota ei ole olemassa, tai jos mainitsemme laskentataulukon nimen väärin, saamme vba-virheen nimellä "Subcript Out of Range".

Edellä mainitussa tapauksessa sain virheellisen alaindeksin, koska työkirjassani ei ole taulukon nimeä nimeltä "myynti 2017".

Esimerkki # 2 - Poista laskentataulukko sen nimen ja muuttujien avulla

Kuten olemme nähneet yllä olevan esimerkin sillä hetkellä, kun viittaamme laskentataulukon nimeen Worksheet-objektilla, emme näe IntelliSense-luetteloa. Jotta voimme nähdä IntelliSense-luettelon, meidän on käytettävä muuttujia.

Vaihe 1: Ilmoita ensin muuttuja laskentataulukoksi .

Koodi:

 Sub Delete_Example2 () Himmennä Ws laskentataulukon lopussa Sub 

Vaihe 2: Koska laskentataulukko on objektimuuttuja, meidän on asetettava muuttuja tiettyyn laskentataulukkoon käyttämällä SET- sanaa.

Koodi:

 Sub Delete_Example2 () Himmennä Ws laskentataulukko-joukoksi Ws = Taulukot ("Myynti 2017") Loppu Sub 

Muuttuja "Ws" viittaa nyt laskentataulukkoon nimeltä "Myynti 2017".

Vaihe 3: Nyt muuttujaa “ Ws ” käyttämällä pääsee kaikkiin laskentataulukon IntelliSense-luetteloihin.

Koodi:

Sub Delete_Example2 () Himmennä Ws taulukkosarjana Ws = laskentataulukot ("Myynti 2017") Ws. End Sub

Vaihe 4: Valitse IntelliSense-luettelosta Poista- menetelmä.

Koodi:

 Sub Delete_Example2 () Himmennä Ws taulukkosarjana Ws = laskentataulukot ("Myynti 2017") Ws.Poista End Sub 

Tällä tavoin muuttujien avulla pääsemme IntelliSense-luetteloon.

Esimerkki # 3 - Poista aktiivinen laskentataulukko

Aktiivinen taulukko on vain aktiivinen tai valittu työarkki. Tätä menetelmää varten meidän ei tarvitse mainita laskentataulukon nimeä. Katso esimerkiksi alla olevaa VBA-koodia.

ActiveSheet.Poista

Tällä hetkellä aktiivinen taulukko on ”Myynti 2017”.

Jos suoritan koodin, se poistaa aktiivisen taulukon eli "Myynti 2017".

Nyt valitsen ”Myynti 2016”.

Nyt se poistaa aktiivisen taulukon eli "Myynti 2016".

Tällä tavoin voimme käyttää "Active Sheet" -objektia taulukon poistamiseen.

Huomaa: Tämän menetelmän käyttämiseksi meidän on oltava täysin varmoja siitä, mitä teemme aktiivisella arkilla ja mikä arkki tulee olemaan aktiivinen taulukko.

Esimerkki # 4 - Poista useampi kuin yksi laskentataulukko

Yllä olevissa esimerkeissämme olemme nähneet, kuinka yksi arkki poistetaan, mutta mitä jos meillä on useita laskentataulukoita, sanotaan, että haluamme poistaa 10 laskentataulukkoa.

Emme voi kirjoittaa 10 riviriviä koodia laskentataulukon poistamiseksi, joten meidän on käytettävä silmukoita selaamaan taulukoiden kokoelmaa ja poistamaan ne.

Koodin alla käydään läpi laskentataulukot ja poistetaan kaikki työkirjan laskentataulukot.

Koodi:

 Sub Delete_Example2 () Himmennä Ws laskentataulukoksi jokaiselle ActiveWorkbookin W: lle. Työarkit Ws. Poista seuraavat Ws End Sub 

Yllä oleva koodi heittää virheen, koska se yrittää poistaa kaikki työkirjan taulukot. Joten tämän välttämiseksi meidän on säilytettävä ainakin yksi laskentataulukko.

Jos haluamme poistaa kaikki laskentataulukot paitsi aktiivisen taulukon, meidän on käytettävä alla olevaa koodia.

Koodi:

 Sub Delete_Example2 () Himmennä Ws laskentataulukoksi jokaiselle ActiveWorkbookin W: lle. Työarkit Jos ActiveSheet.Nimi Ws.Nimi sitten Ws.Poista Poista, jos Next Ws End Sub 

Vastaavasti, jos emme halua poistaa tiettyä laskentataulukkoa, mutta poistaa kaikki muut laskentataulukot, voimme käyttää alla olevaa koodia.

Koodi:

 Sub Delete_Example2 () Himmennä Ws laskentataulukoksi kullekin ActiveWorkbookin W: lle. Työarkit 

Yllä oleva koodi poistaa kaikki laskentataulukot paitsi laskentataulukon nimeltä Myynti 2018.


$config[zx-auto] not found$config[zx-overlay] not found