Excel VBA til at rydde indholdet af et område (3 passende tilfælde)

  • Del Dette
Hugh West

Hvis du søger efter en løsning eller nogle særlige tricks til at rydde indholdet af området med Excel VBA så er du landet det rette sted. Der er nogle enkle trin til at rydde indholdet af området med Excel VBA Denne artikel vil vise dig hvert enkelt trin med gode illustrationer, så du nemt kan anvende dem til dit formål. Lad os komme ind på den centrale del af artiklen.

Download arbejdsbog til øvelser

Du kan downloade arbejdsbogen til øvelser her:

Ryd indholdet af Range.xlsm

Ryd indholdet af et område med Excel VBA: 3 tilfælde

Antag, at du har et datasæt, som du måske ønsker at genbruge rydning af eksisterende celler. Så du kan bruge VBA-kode til at rydde indholdet af en Excel-fil. I dette afsnit vil jeg vise dig de hurtige og nemme metoder til at rydde indholdet af området med Excel VBA på Windows-operativsystemet. Du finder detaljerede forklaringer med klare illustrationer af hver ting i denne artikel. Jeg har brugt Microsoft 365-version her. Men du kan bruge alle andre versioner, hvis du har mulighed for det. Hvis noget i denne artikel ikke virker i din version, så skriv en kommentar.

Tilfælde 1: Ryd alt indhold i området

Du kan bruge både kommandoen Ryd og kommandoen Slet til at rydde indholdet af et bestemt område i det aktuelle regneark eller andre regneark, selv fra andre arbejdsbøger. Jeg vil vise dig alle tilfælde et efter et.

i. Ryd indholdet af et bestemt område af celler

Hvis du vil slette indholdet af et bestemt område, skal du følge nedenstående trin:

📌 Trin:

  • For at gøre dette skal du først gå til det øverste bånd og trykke på Udvikler , og tryk derefter på på Visual Basic fra menuen.
  • Du kan bruge ALT + F11 for at åbne den "Microsoft Visual Basic for Applications" hvis du ikke har tilføjet fanen Udvikler.

  • Nu åbnes et vindue ved navn "Microsoft Visual Basic for Applications" vises. Her skal du trykke på "Indsæt" Der vises en menu, hvorfra du skal vælge "Modul'" mulighed.

  • Nu er der en ny "Modul" vinduet vises. og Indsæt denne VBA-kode i feltet.

Brug af Clear Command:

 Sub Clear_Contents_Range() Range("B4:D5").Clear End Sub 

  • For at køre koden skal du gå til den øverste menu, trykke på Kør mulighed, og her vil åbne nogle andre muligheder og Vælg Kør Sub/UserForm du kan også blot trykke på F5 for at køre koden.

  • Brug af den Klar kommandoen, vil cellerne blive slettet, og formateringen vil også blive fjernet, men de tomme celler vil være der stadig.

Brug af kommandoen Slet:

Du kan også bruge Slet kommandoen i stedet for Klar Kommandoen. Indsæt derefter følgende kode i modulet.

 Sub Delete_Contents_Range() Range("B4:D5").Delete End Sub 

Når du bruger kommandoen Slet, vil den valgte række af celler blive slettet, når du kører koden fjernet helt.

Læs mere: Excel VBA: Ryd indhold, hvis celle indeholder bestemte værdier

Forskellen mellem Clear og Delete Command i Excel VBA:

Den væsentligste forskel mellem de Klar og Slet kommandoer i Excel VBA er, at den Slet kommandoen fjerner det valgte område af celler fuldstændigt, og kommandoen Ryd fjerner kun celleværdien og formateringen, men den tomme celle vil være der stadig.

ii. Klart indhold af det fulde regneark

Hvis du ønsker at rydde alle celler i et regneark, skal du bruge nedenstående kode. Her rydder jeg indholdet fra regnearket "1.2". Du skal indsæt navn af den arbejdsark som du ønsker at slette i anførselstegn.

 Sub Delete_Contents_Range() Worksheets("1.2").Cells.Clear End Sub 

Du kan også bruge Slet kommandoen for at fjerne alle brugte celler i et regneark. Derefter skal du bruge nedenstående kode. Du skal blot ændre regnearkets navn i anførselstegn.

 Sub Delete_Contents_Range() Worksheets("1.2").Cells.Delete End Sub 

iii. Ryd indholdet af det aktive regneark

Nogle gange kan du have brug for kun at slette indholdet af det aktive regneark. I dette tilfælde skal du bruge en simpel kode, som du finder nedenfor:

 Sub Delete_Contents_Range() ActiveSheet.Cells.Clear End Sub 

Du kan også bruge kommandoen delete til at fjerne cellerne fuldstændigt fra det aktive regneark.Du skal indsætte følgende kode i modulet for at gøre dette.

Sub Delete_Contents_Range()

ActiveSheet.Cells.Delete

End Sub

Læs mere: Forskellen mellem Slet og Ryd indhold i Excel

Tilfælde 2: Ryd indholdet af området med bevarelse af formateringen

I de foregående metoder har du bemærket, at du også fjerner celleværdierne sammen med celleformatteringerne. Så hvis du vil kun fjerne celleværdierne, mens formateringen bevares samme.

i. Indholdet af det specifikke sortiment

Du kan bruge ClearContents kommando i Excel VBA for at slette indholdet af et bestemt område. Indsæt derfor følgende kode i modulet.

 Sub Delete_cell_Keeping_format() Range("B2:D4").ClearContents End Sub 

Når du kører koden, vil du derfor se, at de valgte celler er slettet, men at formaterne stadig er tilbage.

Læs mere: Sådan ryddes celler med en bestemt værdi i Excel (2 måder)

ii. Indholdet af det specifikke arbejdsark

Når du ønsker at slette indholdet af et bestemt regneark, mens formaterne forbliver de samme, skal du bruge følgende kode nedenfor:

 Sub Delete_Worksheet_Cells_Keeping_format() Worksheets("2.2").Range("B2:D4").ClearContents End Sub 

🔎 VBA-kode Forklaring:

  • Regneark("2.2") kalder regnearket med navnet "2.2", hvis du vil kalde et regneark med et andet navn, skal du indsætte regnearkets navn i anførselstegn.
  • Og, Område("B2:D4") er at angive det område af celler, der skal ryddes. Du kan redigere celleområdet efter behov.

iii. Indhold fra anden arbejdsbog

Du kan også klar indhold en anden arbejdsbog ved hjælp af VBA kode. Men for at kunne gøre dette skal du holde denne arbejdsbog åben Brug følgende kode nedenfor til dette:

 Sub Delete_Other_Workbook_Cells_Keeping_format() Arbejdsbøger("fil 1").Worksheets("Sheet1").Range("B3:D12").ClearContents End Sub 

🔎 VBA-kode Forklaring:

  • Arbejdsbøger("fil 1") kalder arbejdsmappen ved navn "Fil 1". Når du bruger dine arbejdsbøger, skal du indsætte navnet på arbejdsbogen i anførselstegn.
  • Regneark("Ark1") kalder regnearket ved navn "Ark 1". Hvis du vil kalde et andet regneark, skal du blot indsætte regnearkets navn i stedet for "Ark 1" i denne kode.
  • Og, Range("B3:D13") er at angive det område af celler, der skal ryddes. Du kan redigere celleområdet efter behov.

Læs mere: Sådan ryddes indhold uden at slette formler ved hjælp af VBA i Excel

Case 3: Ryd indholdet af et bestemt område i alle regneark på én gang

Hvis du har brug for at klar indhold af en bestemt række af flere arbejdsark du kan gøre det på én gang ved hjælp af en VBA kode. Du skal bruge For loop til at udføre denne opgave. Indsæt denne kode i modulet for at slette indholdet af området B2:D4 af alle regneark. Hvis du vil ændre celleområdet, skal du redigere 4. linje og indsæt dit dataområde.

 Sub Clear_Specific_Range_All_Worksheets() Dim W_S As Worksheet For Each W_S In ActiveWorkbook.Worksheets W_S.Range("B2:D4").ClearContents Next W_S End Sub 

Ting at huske

  • Brug af den Klar kommandoen vil kun slette celleværdier og formater.
  • Slet kommandoen vil fjerne cellerne fuldstændigt.
  • ClearContents kommandoen sletter kun cellernes værdier og bevarer celleformaterne uændret.

Konklusion

I denne artikel har du fundet ud af, hvordan du kan rydde indholdet af området med Excel VBA Jeg håber, at du fandt denne artikel nyttig. Du kan besøge vores hjemmeside ExcelWIKI for at lære mere Excel-relateret indhold. Du kan skrive kommentarer, forslag eller spørgsmål, hvis du har nogen, i kommentarfeltet nedenfor.

Hugh West er en meget erfaren Excel-træner og analytiker med over 10 års erfaring i branchen. Han har en bachelorgrad i regnskab og finans og en kandidatgrad i Business Administration. Hugh har en passion for undervisning og har udviklet en unik undervisningstilgang, der er nem at følge og forstå. Hans ekspertviden om Excel har hjulpet tusindvis af studerende og fagfolk verden over med at forbedre deres færdigheder og udmærke sig i deres karriere. Gennem sin blog deler Hugh sin viden med verden og tilbyder gratis Excel-tutorials og onlinetræning for at hjælpe enkeltpersoner og virksomheder med at nå deres fulde potentiale.