Excel VBA: Tabellenblatt leeren bis auf Zeile 1
Schritt-für-Schritt-Anleitung
Um ein Excel VBA Tabellenblatt zu leeren, bis auf die erste Zeile, kannst du den folgenden Code verwenden. Dieser Code löscht alle Zellen ab der zweiten Zeile, während die erste Zeile erhalten bleibt:
Sub clear_sheets()
Sheets("Ergebnis").Range("A2:XFD1048576").Clear
Sheets("Ergebnis").Range("I1:XFD1").Clear
End Sub
Falls du nur bestimmte Bereiche oder Formate löschen möchtest, kannst du auch den folgenden Code verwenden:
Dim wsDeinSheet As Worksheet
Dim lngAnzZeilen As Long, lngAnzSpalten As Long
Set wsDeinSheet = Sheets("Ergebnis")
With wsDeinSheet
lngAnzZeilen = .Cells(Rows.Count, 1).End(xlUp).Row
lngAnzSpalten = .Cells(1, Columns.Count).End(xlToLeft).Column
With .Range(.Cells(2, 1), .Cells(lngAnzZeilen, lngAnzSpalten))
.ClearContents ' Werte löschen
.ClearFormats ' Formatierungen löschen
End With
End With
Häufige Fehler und Lösungen
Alternative Methoden
Eine alternative Methode, um ein Excel Blatt zu löschen, besteht darin, das gesamte Arbeitsblatt zu leeren und dann nur die erste Zeile wiederherzustellen. Dies kannst du mit dem folgenden VBA Code erreichen:
Sub clear_and_restore()
With Sheets("Ergebnis")
' Inhalt löschen
.Cells.Clear
' Erste Zeile wiederherstellen
.Rows(1).Value = Array("Spalte A", "Spalte B", "Spalte C", "Spalte D", "Spalte E", "Spalte F", "Spalte G", "Spalte H")
End With
End Sub
Praktische Beispiele
Hier sind einige praktische Anwendungsbeispiele, wie du den Code anpassen kannst:
-
Nur spezifische Spalten leeren:
Sub clear_specific_columns()
Sheets("Ergebnis").Range("B2:D1048576").Clear
End Sub
-
Tabellenblatt löschen:
Sub delete_sheet()
Application.DisplayAlerts = False ' Warnmeldung ausblenden
Sheets("Ergebnis").Delete
Application.DisplayAlerts = True ' Warnmeldung wieder einblenden
End Sub
Tipps für Profis
FAQ: Häufige Fragen
1. Wie kann ich ein ganzes Tabellenblatt in Excel VBA löschen?
Du kannst das gesamte Tabellenblatt mit Sheets("Ergebnis").Delete
löschen. Vergiss nicht, vorher eine Sicherungskopie zu erstellen, falls nötig.
2. Was passiert, wenn ich .Clear
anstelle von .ClearContents
verwende?
Mit .Clear
werden sowohl die Inhalte als auch die Formate der Zellen gelöscht. .ClearContents
entfernt nur die Werte, während die Formatierung erhalten bleibt.