Hi,

Similar approach to the above, but with a few amendments:

Sub CopySheets2()
    Dim ws As Worksheet, bFirst As Boolean, wbkNew As Workbook
bFirst = True
    For Each ws In ThisWorkbook.Worksheets
    Select Case ws.Name
        Case "Sheet4", "Sheet5", "Sheet6", "Sheet7"
        'these are the sheets names which shouldn't be copied
        Case Else
            If bFirst = True Then
                ws.Copy
                Set wbkNew = ActiveWorkbook
                bFirst = False
                'with the first sheet copied, create a new workbook
            Else
                ws.Copy After:=wbkNew.Sheets(wbkNew.Sheets.Count)
                'add subsequent copies to the new workbook
            End If
       End Select
    Next ws
    wbkNew.SaveAs FileName:="Test.xls"
    wbkNew.Close
End Sub