Wrap the processing code in a loop
for each ws in thisworkbook.sheets ' do something on each worksheet next
Example
Sub DeleteEmptyRows() Dim ws As Worksheet Dim strSearch As String Dim lRow As Long strSearch = "ressort" For Each ws In ThisWorkbook.Sheets If (ws.Name <> "Sheet1") And (ws.Name <> "Sheet2") And (ws.Name <> "Sheet3") Then With ws lRow = .Range("A" & .Rows.Count).End(xlUp).Row With .Range("A1:A" & lRow) .AutoFilter Field:=1, Criteria1:="=*" & strSearch & "*" .Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Delete End With ws.Range("$A$1:$P$65536").AutoFilter Field:=1 End With End If Next End Sub
So, if the sheet names are Sheet1 or Sheet2 or Sheet3, they will be skipped.
user2140173
source share