In diesem Tutorial erfahren Sie, wie Sie ein Arbeitsblatt mit VBA löschen oder löschen.
Arbeitsblatt löschen
Verwenden Sie den Löschbefehl, um ein Arbeitsblatt zu löschen.
Arbeitsblatt nach Namen löschen
1 | Sheets("Sheet1").Löschen |
Arbeitsblatt nach Indexnummer löschen
Dieser Code löscht das erste Arbeitsblatt in der Arbeitsmappe:
1 | Blätter(1).Löschen |
Dieser Code löscht das letzte Arbeitsblatt in der Arbeitsmappe:
1 | Sheets(Sheets.Count).Löschen |
Arbeitsblatt ohne Aufforderung löschen
Wenn Sie versuchen, ein Arbeitsblatt zu löschen, fordert Excel Sie auf, Ihre Aktion zu bestätigen:
Sie können diese Aufforderungen (Warnungen) deaktivieren, indem Sie DisplayAlerts umschalten:
123 | Application.DisplayAlerts = FalseSheets("Sheet1").LöschenApplication.DisplayAlerts = True |
Blatt löschen, falls vorhanden
Wenn Sie versuchen, ein nicht vorhandenes Arbeitsblatt zu löschen, generiert VBA einen Fehler. Mit On Error Resume Next können Sie VBA anweisen, ein Blatt zu löschen, wenn es existiert, andernfalls springen Sie zur nächsten Codezeile:
123 | Bei Fehler Fortsetzen als nächstesSheets("Sheet1").LöschenBei Fehler GoTo 0 |
Sie können auch unsere RangeExists-Funktion verwenden, um zu überprüfen, ob ein Blatt vorhanden ist, und es gegebenenfalls zu löschen.:
123 | Wenn RangeExists("Sheet1") ThenSheets("Sheet1").LöschenEnde Wenn |
Klares Blatt
Dieser Code löscht ein ganzes Blatt mit Inhalten, Formaten und allem anderen:
1 | Sheets("Sheet1").Cells.Clear |
Blattinhalt löschen
Dieser Code löscht den Inhalt eines gesamten Blatts. Es lässt Formatierung, Kommentare und alles andere allein:
1 | Sheets("Sheet1").Cells.ClearContents |
Clear Sheet UsedSortiment
In den obigen Beispielen werden ALLE Zellen in einem Arbeitsblatt gelöscht. Dies kann bei großen Blättern sehr zeitaufwendig sein. Wenn Sie stattdessen den UsedRange verwenden, löscht VBA nur die „verwendeten“ Zellen, die Werte, Formate usw. enthalten.
1 | Sheets("Sheet1").UsedRange.Clear |