ich habe eine Tabelle, in der jeden Tag ein neuer Sheet erzeugt und mit dem Tagesdatum benannt wird. Das funktioniert auch sehr gut. Damit die Datei aber nicht bis ins unendliche wächst sollen nur die Sheets der letzten 5 Tagesdaten behalten werden. Alles was davor war soll gelöscht werden. Das mache ich mit dem Code unten. Der funktioniert auch ganz prima. Aber nur, solange der Sheet ausschließlich das Datum als Name enthält. Ist ein Zusatz dabei, z. B. wenn ein Tabellenblatt kopiert wurde eine (2), was durchaus vorkommen kann, dann funktioniert das nicht mehr. Kann man den Namen des Sheets auch nach einem bestimmten Teil, also z. B. die ersten 10 Stellen, durchsuchen lassen und diese dann mit dem Datum vergleichen?
Ich danke euch schon mal vorab für eure Mühe.
Grüße,
Marc
Sub TabelleLöschen()
Dim heute As Date
Dim i As Integer
heute = Format(Now, "DD.MM.YYYY")
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = Sheets.Count To 1 Step -1
If Sheets(i).Name