In meiner täglichen Arbeit mit Excel stellte ich fest, dass Arbeitsmappen oft viele ungenutzte Tabellenblätter enthalten. Diese können die Übersichtlichkeit beeinträchtigen und die Dateigröße unnötig aufblähen. Um dieses Problem zu beheben, habe ich eine VBA-Routine entwickelt, die automatisch alle ungenutzten Tabellenblätter aus einer Arbeitsmappe entfernt. Diese Routine ist besonders nützlich, um sicherzustellen, dass nur relevante Daten gespeichert werden, was die Effizienz bei der Speicherung und Weitergabe von Arbeitsmappen erhöht.

Erweiterungen im Code:

  • Die Prozedur unbenutzte_Tabellenblaetter_loeschen akzeptiert nun ein optionales Argument excludeSheets, eine Liste von Tabellenblattnamen, die nicht gelöscht werden sollen.
  • Die Prozedur erstellt eine Collection excludeSheetList, die alle auszuschließenden Tabellenblätter enthält.
  • Beim Durchlaufen der Tabellenblätter werden verborgene Tabellenblätter (wks.Visible <> xlSheetVisible) und Blätter in der Ausschlussliste ignoriert.
  • Die restlichen Schritte bleiben unverändert: Die Prozedur ermittelt die letzte belegte Zelle jedes Blattes und löscht das Blatt, wenn es leer ist.
Call unbenutzte_Tabellenblaetter_loeschen(Array("Sheet1", "Sheet2"))