Tabellenblatt säubern mit Cells.Delete statt Cells.Clear

Ein Tabellenblatt, das als Hilfsblatt gedient hat, soll wieder geleert und möglichst in den Urzustand versetzt werden, so als wäre es gerade neu angelegt worden. Was ist dafür die beste Lösung?

Mit diesem Code werden alle Zellen des ersten Tabellenblattes geleert:

Dim sh As Worksheet
Set sh = Sheets(1)
sh.Cells.Clear

Allerdings bleiben die Größen (Breiten, Höhen) und Formate erhalten.

„Sauberer“ wird es so:

Dim sh As Worksheet
Set sh = Sheets(1)
sh.Cells.Delete

So werden zwar alle Zellen gelöscht, aber das Blatt ist danach nicht ohne Zellen, denn die wachsen automatisch neu wieder nach.