Deleting multiple sheets with VBA

Mr2017

Well-known Member
Joined
Nov 28, 2016
Messages
581
Office Version
365, 2016
Platform
Windows
Hi

I'm trying to delete 30 sheets from a spreadsheet with VBA.

The spreadsheet has about 50 sheets, but I only want to delete the ones with the word "auto" at the end of the sheet name.

I've written this and it has cleared the contents of those sheets.

But I want to delete them without prompts.

Can anyone advise how I need to change this please?



Code:
Sub DeleteSheets()


     Dim sht As Worksheet
    
    For Each sht In ThisWorkbook.Worksheets
    
        If Right(sht.Name, 4) = "auto" Then
            Application.DisplayAlerts = False
            sht.Cells.Delete
            Application.DisplayAlerts = True
          
        End If
    Next


Exit Sub




End Sub
 

Some videos you may like

Excel Facts

Format cells as time
Select range and press Ctrl+Shift+2 to format cells as time. (Shift 2 is the @ sign).

jmacleary

Well-known Member
Joined
Oct 5, 2015
Messages
1,015
Office Version
365, 2007
Platform
Windows
Hi there. You were nearly there!

Try this:
Code:
Sub DeleteSheets()


     Dim sht As Worksheet
    
    For Each sht In ThisWorkbook.Worksheets
    
        If Right(sht.Name, 4) = "auto" Then
            Application.DisplayAlerts = False
            sht.Delete
            Application.DisplayAlerts = True
          
        End If
    Next

End Sub
PS You dont need the exit sub, as the very next line is the end of the sub anyway.
 

Subscribe on YouTube

Watch MrExcel Video

Forum statistics

Threads
1,106,306
Messages
5,510,510
Members
408,792
Latest member
S_s_s

This Week's Hot Topics

  • Turn fraction around
    Hello I need to turn a fraction around, for example I have 1/3 but I need to present as 3/1
  • TIme Clock record reformatting to ???
    Hello All, I'd like some help formatting this (Tbl-A)(Loaded via Power Query) [ATTACH type="full" width="511px" alt="PQdata.png"]22252[/ATTACH]...
  • TextBox Match
    hi, I am having a few issues with my code below, what I need it to do is when they enter a value in textbox8 (QTY) either 1,2 or 3 the 3 textboxes...
  • Using Large function based on Multiple Criteria
    Hello, I can't seem to get a Large formula to work based on two criteria's. I can easily get a oldest value based one value, but I'm struggling...
  • Can you check my code please
    Hi, Im going round in circles with a Compil Error End With Without With Here is the code [CODE=rich] Private Sub...
  • Combining 2 pivot tables into 1 chart
    Hello everyone, My question sounds simple but I do not know the answer. I have 2 pivot tables and 2 charts that go with this. However I want to...
Top