VBA Poista sisältö | Kuinka tyhjentää tai poistaa sisältöä VBA-koodilla?
Excel VBA Tyhjennä sisältö
Tyhjennä sisältö on VBA: n menetelmä, jota käytetään poistamaan tai poistamaan sille toimitettuihin soluihin tallennetut arvot, tämä menetelmä tekee solualueen tyhjäksi ja sitä käytetään alueen ominaisuuden kanssa määritetyn solualueen käyttämiseen, esimerkki Tämän menetelmän käyttäminen on seuraava alue (“A1: B2”). ClearContents tämä menetelmä tyhjentää solujen sisällön välillä A1 - B2.
Excelissä tietojen lisääminen ja tietojen poistaminen on yleinen rutiinitehtävä. Joskus poistamme yhden solun arvon, joskus useita solujen arvoja, ja joskus saatamme joutua poistamaan myös koko laskentataulukon sisällön. Tässä artikkelissa näytämme, kuinka "Poista sisältö" -menetelmää käytetään Excel VBA: ssa. VBA: ssa meillä on monia tapoja tehdä tämä, kuten "Tyhjennä", "Poista" ja "Tyhjennä sisältö".
Mitä selkeä sisältö on Excel VBA: ssa?
Ennen kuin kerron sinulle sisällön tyhjentämisestä VBA: ssa, haluan näyttää, kuinka voimme poistaa tai tyhjentää tietyn alueen tiedot.
Katso esimerkiksi alla olevat tiedot.
Nyt, jos haluan poistua solusta A1 - C3, meidän on ensin mainittava solualue VBA RANGE -objektia käyttäen.
Koodi:
Alue (“A1: C3”)
Mainittuamme solualueen RANGE-objektilla meidän on valittava menetelmä "Tyhjennä" poistaaksesi soluarvojen maininnan.
Koodi:
Alue (“A1: C3”). Selkeä
Tämä tyhjentää mainitut soluarvot.
Koodi:
Sub Clear_Example () -alue ("A1: C3"). Tyhjennä End Sub
Selkeän menetelmän lisäksi voimme käyttää myös "POISTA" -menetelmää.
Koodi:
Alue (“A1: C3”). Poista
Tämä poistaa mainitut soluarvot aivan kuten selkeä menetelmä on tehnyt.
Jos haluat poistaa kaikki solun tiedot, voit käyttää VBA CELLS -ominaisuutta laskentataulukon nimellä.
Taulukot (“Sheet1”). Solut. Poista
Laskentataulukot ("Sheet1"). Solut
Molemmat yllä olevat koodit poistavat koko taulukon ”Sheet1” tiedot. Se poistaa soluarvot suoraan laskentataulukon ensimmäisestä solusta viimeiseen soluun.
Jos haluat poistaa nykyiset taulukon solut, voit käyttää Active Sheet -objektia.
ActiveSheet.Cells.Delete tai ActiveSheet.Cells.Clear
Ero tyhjennä ja poista -menetelmien välillä
Tiedän, että tämän kysymyksen olisi pitänyt jo olla mielessäsi.
Kyllä, näiden kahden menetelmän välillä on ero.
Kun käytät "Poista" -menetelmää, solu poistetaan ja alla oleva solu ottaa poistetun solun sijainnin.
Katso esimerkki alla olevasta kuvasta.
Nyt aion poistaa solun A1 poistomenetelmällä.
Koodi:
Sub Clear_Example () -alue ("A1"). Poista End Sub
Suoritan tämän koodin ja näen mitä tapahtuu.
Katso mitä tapahtui täällä, kun kerroin, kun poistin solun A1, se poistetaan, mutta solu A2 siirtää yhden solun ylöspäin ja käytti poistettua solua. Tämä johtaa tietojen ristiriitaisuuteen. Joten ole varovainen, kun käytät Poista-menetelmää.
Nyt samat tiedot, poistan menetelmän.
Koodi:
Sub Clear_Example () -alue ("A1"). Tyhjennä End Sub
Katso nyt mitä tapahtuu, kun suoritan tämän koodin.
Tämä koodi on juuri vapauttanut solun A1 muuttamatta muita soluja. Tämä näyttää oikealta tavalta poistaa vain osa soluista koko tietoalueelta.
Käytä VBA Tyhjennä sisältö -menetelmää solujen muotoilun säilyttämiseksi
Jos olet havainnut kaksi edellistä menetelmää, nämä kaksi menetelmää paitsi poistivat tai tyhjensivät toimitetut solut. Se poisti myös toimittamiemme solujen muotoilun.
Solujen muotoilun säilyttämiseksi meidän ei tarvitse käyttää ”Poista” tai “Tyhjennä”, mutta meidän on käytettävä VBA ”Poista sisältö” -menetelmää.
Heti kun syötät solualueen RANGE-objektilla, se näyttää kaikki siihen liittyvät ominaisuudet ja menetelmät.
Voimme käyttää "Poista", voimme käyttää "Tyhjennä" ja voimme myös "ClearContents" menetelmiä.
Valitse tämä menetelmä.
Koodi:
Sub Clear_Example () -alue ("A1: C3"). ClearContents End Sub
Nyt tämä tyhjentää sisällön A1: stä C3-soluun, mutta meillä on kaikki olemassa olevat muotoilut sellaisenaan.
Kuten yllä olevasta kuvasta näet, solujen väri on VBA: ssa, reunukset ja kaikki muotoilut, jotka liittyvät mainittuihin soluihin.
Vastaavasti voimme tyhjentää myös muiden arkkien sisällön.
Laskentataulukot ("Sheet1"). Alue ("A1: D10"). ClearContents
Tämä tyhjentää sisällön soluista A1 - D10 arkin ”Sheet1” kautta.
Vastaavasti voimme poistaa myös muut avoimet työkirjan solut.
Työkirjat (“Book1.xlsx”). Taulukot (“Sheet1”). Alue (“A1: D10”). ClearContents
Selaa kaikkia laskentataulukoita ja tietyn alueen tyhjennettyä sisältöä
Oletetaan, että työkirjassasi on monta taulukkoa ja haluat poistaa solualueen A1: stä C15: iin kaikilla taulukoilla, joita meidän on käytettävä jokaisen silmukan kohdalla VBA: ssa.
Alla oleva koodi tekee työn.
Koodi:
Sub Clear_All () Himmennä Ws laskentataulukoksi jokaiselle ActiveWorkbook.Worksheets Ws.Range ("A1: C15") -sivulle. ClearContents Next Ws End SubHuomaa: Voit muuttaa solualueita toiveidesi mukaan.
Jos haluat poistaa kaikki laskentataulukon tiedot, sinun on käytettävä alla olevaa koodia.
Koodi:
Sub Clear_All () Himmennä Ws laskentataulukoksi jokaiselle W: lle ActiveWorkbook.Worksheets Ws.Cells.ClearContents Next Ws End Sub
Voit ladata tämän VBA Clear Contents Excel -mallin täältä - VBA Clear Contents Template