VBA Radera eller rensa kalkylblad

Innehållsförteckning

Denna handledning lär dig hur du tar bort eller rensar ett kalkylblad med VBA.

Ta bort kalkylblad

Använd kommandot delete för att radera ett kalkylblad.

Ta bort kalkylblad efter namn

1 Ark ("Ark1"). Radera

Ta bort kalkylblad efter indexnummer

Denna kod tar bort det första kalkylbladet i arbetsboken:

1 Ark (1) .Radera

Denna kod raderar det sista kalkylbladet i arbetsboken:

1 Ark (Sheets.Count) .Radera

Ta bort kalkylblad utan prompt

När du försöker ta bort ett kalkylblad ber Excel dig att bekräfta din åtgärd:

Du kan inaktivera dessa uppmaningar (varningar) genom att växla DisplayAlerts:

123 Application.DisplayAlerts = FalsktArk ("Ark1"). RaderaApplication.DisplayAlerts = True

Ta bort blad om det finns

Om du försöker ta bort ett kalkylblad som inte finns genererar VBA ett fel. Med On Error Resume Next kan du be VBA att ta bort ett ark om det finns, annars hoppa till nästa kodrad:

123 Vid fel Återuppta nästaArk ("Ark1"). RaderaVid fel GoTo 0

Du kan också använda vår RangeExists -funktion för att kontrollera om ett ark finns och ta bort det i så fall:

123 Om RangeExists ("Sheet1") DåArk ("Ark1"). RaderaAvsluta om

Tydligt ark

Denna kod rensar ett helt innehållsinnehåll, format och allt annat:

1 Ark ("Sheet1"). Cells.Clear

Tydligt arkinnehåll

Den här koden rensar hela innehållet. Det kommer att lämna formatering, kommentarer och allt annat ensam:

1 Sheets ("Sheet1"). Cells.ClearContents

Tydligt ark UsedRange

Ovanstående exempel rensar ALLA celler i ett kalkylblad. Detta kan vara mycket tidskrävande i stora ark. Om du använder UsedRange istället rensar VBA bara de "använda" cellerna som innehåller värden, format etc.

1 Sheets ("Sheet1"). UsedRange.Clear
wave wave wave wave wave