Počisti vsebino VBA - Kako počistiti ali izbrisati vsebino s kodo VBA?

Excel VBA Počisti vsebino

Počisti vsebino je metoda v VBA, ki se uporablja za brisanje ali odstranjevanje vrednosti, ki so shranjene v celicah, ki so ji na voljo. Ta metoda naredi obseg celic prazen in se uporablja z lastnostjo obsega za dostop do določenega obsega celic, primer za uporabo te metode je naslednji obseg ("A1: B2"). ClearContents ta metoda bo počistila vsebino celic od A1 do B2.

V Excelu je dodajanje in brisanje podatkov običajna rutinska naloga. Včasih izbrišemo vrednost ene celice, včasih veliko vrednosti celic, včasih pa bomo morda morali izbrisati tudi celotno vsebino delovnega lista. V tem članku vam bomo pokazali, kako uporabljati metodo »Počisti vsebino« v Excelu VBA. V VBA imamo na voljo veliko načinov, kot so »Počisti«, »Izbriši« in »Počisti vsebino«.

Kaj je jasna vsebina v Excelu VBA?

Preden vam povem o Clear Contents v VBA, naj vam pokažem, kako lahko izbrišemo ali izbrišemo podatke v določenem obsegu.

Na primer, poglejte spodnje podatke.

Zdaj, če se želim počistiti iz celice A1 do C3, moramo najprej omeniti obseg celic, ki uporabljajo objekt VBA RANGE.

Koda:

Doseg (“A1: C3”)

Po omembi obsega celic z uporabo predmeta RANGE moramo izbrati metodo »Clear«, da počistimo omembe vrednosti celic.

Koda:

Območje (“A1: C3”). Jasno

S tem bodo izbrisane omenjene vrednosti celic.

Koda:

Sub Clear_Example () Obseg ("A1: C3"). Počisti Konec Sub

Poleg jasne metode lahko uporabimo tudi metodo »IZBRIŠI«.

Koda:

Obseg (“A1: C3”). Izbriši

S tem bodo izbrisane omenjene vrednosti celic, tako kot je to storila naša jasna metoda.

Če želite izbrisati vse podatke celice, lahko uporabite lastnost VBA CELLS z imenom delovnega lista.

Delovni listi (“Sheet1”). Celice.Delete
Delovni listi (“Sheet1”). Celice.Clear

Zgornji kodi bosta izbrisali celotne podatke delovnega lista »List1«. Vrednosti celic bo izbrisala od prve celice do zadnje celice delovnega lista.

Če želite izbrisati sedanje celice lista, lahko uporabite objekt Active Sheet.

ActiveSheet.Cells.Delete ali ActiveSheet.Cells.Clear

Razlika med načini brisanja in brisanja

Vem, da bi to vprašanje že moralo igrati v tvoji glavi.

Da, obstajata razlika med tema dvema metodama.

Ko uporabite metodo »Izbriši«, bo celica izbrisana, spodnja celica pa bo prevzela položaj izbrisane celice.

Na primer, poglejte spodnjo sliko.

Zdaj bom metodo brisanja uporabil za brisanje celice A1.

Koda:

Sub Clear_Example () Obseg ("A1"). Izbriši Konec Sub

Izvedel bom to kodo in videl, kaj se bo zgodilo.

Poglejte, kaj se je zgodilo tukaj; kot sem rekel, ko sem izbrisal celico A1, se črta, celica A2 pa se premakne za eno celico navzgor in zasede izbrisano celico. To bo povzročilo neskladje podatkov. Zato bodite previdni pri uporabi metode Delete.

Zdaj za iste podatke bom počistil metodo.

Koda:

Sub Clear_Example () Obseg ("A1"). Clear End Sub

Zdaj pa poglejte, kaj se zgodi, ko zaženem to kodo.

Ta koda je pravkar izpraznila celico A1, ne da bi spremenila druge celice. To se zdi ustrezna metoda za brisanje samo dela celic celotnega obsega podatkov.

Za ohranitev oblikovanja celic uporabite metodo VBA Clear Contents

Če ste opazili prejšnji dve metodi, ti dve metodi ne samo izbrisali ali počistili predvidene celice. Prav tako je izbrisalo oblikovanje celic, ki smo jih zagotovili.

Da bi ohranili oblikovanje celic, ne rabimo niti »Delete« niti »Clear«, temveč moramo uporabiti metodo VBA »Clear Contents«.

Ko vnesete obseg celic z objektom RANGE, se prikažejo vse lastnosti in metode, povezane z njim.

Dostop do »Delete«, lahko do »Clear« in tudi do metod »ClearContents«.

Izberite to metodo.

Koda:

Sub Clear_Example () Obseg ("A1: C3"). ClearContents End Sub

Zdaj bomo s tem počistili vsebino iz celice A1 v celico C3, vendar bomo imeli vse obstoječe oblikovanje, kakršno je.

Kot lahko vidite na zgornji sliki, imamo v VBA barvo celic, obrobe in vsako oblikovanje, povezano s temi celicami.

Podobno lahko počistimo tudi vsebino drugih listov.

Delovni listi (“Sheet1”). Obseg (“A1: D10”). ClearContents

S tem se vsebina izbriše iz celic A1 do D10 na listu „List1“.

Podobno lahko izbrišemo tudi druge odprte celice delovnega zvezka.

Delovni zvezki ("Book1.xlsx"). Delovni listi ("Sheet1"). Obseg ("A1: D10"). ClearContents

Preglejte vse delovne liste in očistite vsebino določenega obsega

Predpostavimo, da imate v delovnem zvezku veliko listov, in želite izbrisati obseg celic od A1 do C15 na vseh listih, ki jih moramo za to uporabiti za vsako zanko v VBA.

Spodnja koda bo opravila delo.

Koda:

Sub Clear_All () Zatemni W kot delovni list za vsak Ws v ActiveWorkbook.Delovni listi Ws.Range ("A1: C15"). ClearContents Next Ws End Sub
Opomba: Obseg celic lahko spremenite po svoji želji.

Če želite počistiti celotne podatke delovnega lista, morate uporabiti spodnjo kodo.

Koda:

Sub Clear_All () Zatemni W kot delovni list za vsak W v ActiveWorkbook.Worksheats Ws.Cells.ClearContents Next Ws End Sub

To predlogo VBA Clear Contents Excel lahko prenesete tukaj - Predloga VBA Clear Contents.

Zanimive Članki...