![]() |
Delete sheets
I have a workbook with many diefferent sheets. I need a makro to delete all
sheets except 4 sheets named: Elevdata, Rapportvalidering, Kontrollark, Samleark, It is not possible to record a makro because the sheets can appear with different names. Regards Sverre |
Delete sheets
Try the below macro and feedback. This works on the active workbook
Sub DeleteSheets() strSheets = "Elevdata,Rapportvalidering,Kontrollark,Samlea rk" Application.DisplayAlerts = False For intTemp = Sheets.Count To 1 Step -1 If InStr(1, "," & strSheets & ",", "," & _ Sheets(intTemp).Name & ",", vbTextCompare) = 0 Then Sheets(intTemp).Delete End If Next Application.DisplayAlerts = True End Sub -- If this post helps click Yes --------------- Jacob Skaria "Sverre" wrote: I have a workbook with many diefferent sheets. I need a makro to delete all sheets except 4 sheets named: Elevdata, Rapportvalidering, Kontrollark, Samleark, It is not possible to record a makro because the sheets can appear with different names. Regards Sverre |
Delete sheets
Sub Delete_SH() Dim v As Worksheet, l As Long Const s As String = "Elevdata Rapportvalidering Kontrollark Samleark" l = Len(s) Application.DisplayAlerts = False For Each v In Worksheets If l = Len(VBA.Replace(s, v.Name, "")) Then _ v.Delete Next Application.DisplayAlerts = True End Sub regards r Il mio ultimo lavoro ... http://excelvba.altervista.org/blog/...ternative.html "Sverre" wrote: I have a workbook with many diefferent sheets. I need a makro to delete all sheets except 4 sheets named: Elevdata, Rapportvalidering, Kontrollark, Samleark, It is not possible to record a makro because the sheets can appear with different names. Regards Sverre |
Delete sheets
Thank you Jacob. The program vorks perfekt
Thank you very much |
Delete sheets
Thank you very much. It works |
Delete sheets
I think it is rather difficult to input sheet's name correctly. if the
number of the sheets you want to leave is a few compared to the sheets you want to delete, first select all the sheets you want to leave, then run the macro below. Sub Delunselectedsheets() Dim v As Sheets, sh As Worksheet Dim arr() Dim i As Long Set v = ActiveWindow.SelectedSheets ReDim arr(v.Count - 1) For Each sh In v arr(i) = sh.Name i = i + 1 Next Application.DisplayAlerts = False For Each sh In Worksheets If IsError(Application.Match(sh.Name, arr, 0)) Then sh.Delete End If Next End Sub Keiji Sverre wrote: I have a workbook with many diefferent sheets. I need a makro to delete all sheets except 4 sheets named: Elevdata, Rapportvalidering, Kontrollark, Samleark, It is not possible to record a makro because the sheets can appear with different names. Regards Sverre |
All times are GMT +1. The time now is 04:12 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com