Ich habe ein Makro, das ich eingerichtet habe, um mehrere Sortierungen und Filter zu durchlaufen, und am Ende jedes Schritts erstellt es ein neues Arbeitsblatt und fügt die gefilterten Informationen ein.Excel löschen Bereits erstellte Blätter
Wenn ich möchte, dass die Person dieselbe Arbeitsmappe mit einem neuen Satz von Daten verwenden kann, möchte ich, dass das Makro alle zuvor erstellten Blätter löscht.
Ich habe mehrere Arten von Code ausprobiert, die alle Arbeitsblätter löschen, aber nicht "P High Offstd" löschen können.
Ich habe versucht, die Aufträge des Löschens sowie verschiedene Möglichkeiten, Arbeitsblätter zu löschen, aber es verweigert, das Arbeitsblatt zu löschen.
Ich habe sogar versucht, den Namen zu ändern, wie es früher Processing High Offstd genannt wurde. Jede Hilfe wäre von Vorteil.
Application.ScreenUpdating = False
For Each Sheet In ActiveWorkbook.Worksheets
If Sheet.Name = "Processing 0% Performance" Then
Application.DisplayAlerts = False
Worksheets("Processing 0% Performance").Delete
Application.DisplayAlerts = True
End If
Next Sheet
For Each Sheet In ActiveWorkbook.Worksheets
If Sheet.Name = "Processing 0 OnStd" Then
Application.DisplayAlerts = False
Worksheets("Processing 0 OnStd").Delete
Application.DisplayAlerts = True
End If
Next Sheet
For Each Sheet In ActiveWorkbook.Worksheets
If Sheet.Name = "P High OffStd" Then
Application.DisplayAlerts = False
Worksheets("P High OffStd").Delete
Application.DisplayAlerts = True
End If
Next Sheet
For Each Sheet In ActiveWorkbook.Worksheets
If Sheet.Name = "Processing Low Performance" Then
Application.DisplayAlerts = False
Worksheets("Processing Low Performance").Delete
Application.DisplayAlerts = True
End If
Next Sheet
With ActiveWorkbook.Worksheets("Processing")
.Range("AA1:AZ" & .Range("AA1").End(xlDown).Row).ClearContents
.Range("C3:C" & .Range("C3").End(xlDown).Row).ClearContents
.Range("E3:E" & .Range("E3").End(xlDown).Row).ClearContents
End With
vereinfacht werden Könnte sein, dass es das letzte Blatt in der Arbeitsmappe ist. Arbeitsmappen müssen mindestens ein Blatt haben, sodass Sie das letzte Blatt nicht löschen können. –
Warum löschen Sie nicht einfach die Blätter, die Sie in Ihrem 'For Each Loop' aus Ihrem Filter neu erstellen möchten - keine Notwendigkeit für all diesen Zeilencode- – 0m3r
Leider ist es nicht das letzte Blatt. Es gibt das Blatt, auf dem meine Buttons, auf denen die MACROs stehen, sowie das Blatt mit den Quelldaten stehen. –