Ich habe einen Code der wenn ich auf zurücksetzen mir alle Tabellenblätter bis auf die in dem Code ersichtlichen Blätter löscht.
Das funktioniert einwandfrei, und das will ich auch so.
Meine Frage ist folgende, ist es auch möglich das Tabellenblätter die z.B in der Zeile H2 einen bestimmten Text haben, nicht gelöscht werden?
Die Tabellenblätter sind immer nach dem Namen des Gastes benannt, sollte ein Gast seine Rechnung nicht bezahlen, also aufschreiben soll dieses Blatt nicht gelöscht werden, dass es beim nächsten start wieder da ist bis die Rechnung beglichen wird.
Ich hoffe man versteht meine Frage und vielen Dank für eure Hilfe
Sub Loeschen()
Dim ws As Worksheet
a = MsgBox("Programm wird auf Standart zurückgesetzt" & Chr(13) & "" & Chr(13) & "Hast du die Datei gespeichert?" & Chr(13) & "" & Chr(13) & "Gästeliste und Einnahmen werden gelöscht!" & Chr(13) & "" & Chr(13) & "© UdPa", vbYesNo + vbCritical)
If a = vbNo Then Exit Sub Else
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For Each ws In ThisWorkbook.Worksheets
Select Case ws.Name
Case "Gesamt", "Vorlage", "Tabelle31", "Gast-Übersicht", "Lager", "Gesamtstatistik", "Startbildschirm", "manuelles Blatt"
Case Else
ws.Delete
End Select
Call manuelles_Blatt_ausblenden
Call Gesamtstatistik_ausblenden
Call Lagerbestand_ausblenden
Call lösche_Datum
Next ws
Sheets("Vorlage").Select
With Sheets("Gast-Übersicht")
If .Cells(2, 1) > "" Then
With .Range("C2:C" & .Cells(Rows.Count, 1).End(xlUp).Row).Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
.Range("A2:D" & .Cells(Rows.Count, 1).End(xlUp).Row).ClearContents
End If
End With
End Sub