Sub DeleteSheets()
Dim LstRw&, ShtName&
With Application
.DisplayAlerts = False
.ScreenUpdating = False
'''/// Change 'Sheet1' to the real name of your sheet _
containing the list of sheet names in column A.
With Sheets("Sheet1")
LstRw = .Cells(Rows.Count, "A").End(xlUp).Row
For ShtName = LstRw To 1 Step -1
If .Cells(ShtName, "F").Value = "X" Then
On Error Resume Next
Sheets(.Cells(ShtName, "A").Value).Delete
If Not Err.Number = 0 Then
MsgBox "There is no sheet named " & .Cells(ShtName, "A").Value & _
" to delete.", , "Sheet Deletion Error"
Err.Clear
GoTo SkipThisOne
End If
.Rows(ShtName).EntireRow.Delete
End If
SkipThisOne:
Next
End With
.ScreenUpdating = True
.DisplayAlerts = True
End With
End Sub