I have a workbook with many sheets labelled properly, but occassionally my colleagues add a new sheet to the spreadsheet and save it which knackers my formulas.
I want to add a check in my beforeclose function that checks for sheets that begin with the word Sheet, so anything called Sheet1, Sheet2 etc is to be deleted.

What i have so far is:

Sub DoesSheetExist()

On Error Resume Next

Dim wSheet As Worksheet
Set wSheet = Sheets("Sheet1") ' can also be a string, such as Sheets("Sheet1")

If wSheet Is Nothing Then
    'MsgBox "Worksheet not found!"
    Set wSheet = Nothing ' make the worksheet point to nothing.
    On Error GoTo 0
Else
Sheets("Sheet1").Activate
    MsgBox "Blank Worksheet found! This will be deleted"
    Sheets("Sheet1").Delete
    Set wSheet = Nothing ' set the found Worksheet object to nothing.  You can use the found wSheet for your purposes, though.
End If

End Sub
Whilst this works great if there is just the Sheet1, it does not work for Sheet2 onwards as I cant quite figure out how to loop the code.