Hi Panda2000,
Try this:
Sub SheetsToBooksD()
'Jerry Beaucaire (10/22/2009) - XLAdept 7/25/2012
'Creates a separate workbook for each sheet, saved with sheetname + Date
Dim wr As Worksheet, wv As Worksheet, wd As Worksheet, savePath As String, MyStr As String
Dim ThisBook As Workbook, ThatBook As Workbook, ThirdBook As Workbook, R As String, V As String, T As String
Set ThatBook = Workbooks("volume.xlsx"): Set ThisBook = Workbooks("Revenue.xlsx"): Set ThirdBook = Workbooks("Data.xlsx")
savePath = "C:\Users\Documents\"
'MyExcelApp.DisplayAlerts = False
For Each wr In ThisBook.Worksheets
If wr.Name = "Revenue by Territory" Or wr.Name = "Volume by Territory" Then GoTo NextRev
Worksheets(Array("Revenue by Territory", "Volume by Territory")).Select
Worksheets("Volume by Territory").Activate
Worksheets(Array("Revenue by Territory", "Volume by Territory")).Copy
MyStr = wr.Name & " " & Format(Date, "mm-dd-yy")
wr.Copy After:=Worksheets(Worksheets.count)
Cells.Copy 'removing all formulas
Range("A1").PasteSpecial xlPasteValues
R = wr.Name: R = Left(R, InStr(1, R, "(") - 1)
For Each wv In ThatBook.Worksheets
V = wv.Name: V = Left(V, InStr(1, V, "(") - 1)
If V = R Then
wv.Copy After:=Worksheets(Worksheets.count) 'copies sheet to new workbook
Cells.Copy 'removing all formulas
Range("A1").PasteSpecial xlPasteValues
Application.DisplayAlerts = False
Exit For: End If
Next wv
For Each wd In ThirdBook.Worksheets
T = wd.Name: T = Left(T, InStr(1, T, "(") - 1)
If T = V Then
wd.Copy After:=Worksheets(Worksheets.count) 'copies sheet to new workbook
Cells.Copy 'removing all formulas
Range("A1").PasteSpecial xlPasteValues
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=savePath & MyStr, FileFormat:=xlNormal
GoTo NextRev: End If
Next wd
NextRev: Next wr: End Sub
Bookmarks