E.g., there are 6 sheets in a workbook. The sheets are named "Section 1", "Section 2", "Section 3", "Section 4", "Section 5", and "Section 6". Save those 6 sheets as separate files in their corresponding folders named "Section 1", "Section 2", "Section 3", "Section 4", "Section 5", and "Section 6". Said another way, how do I save an array of sheets as separate files into an array of folders.
I've tried:
Select Case x
Case x = 1
sec1fol = "\Section 1 Jobs Released Last Week (excludes NRT Jobs)"
ActiveWorkbook.SaveAs Filename:=fName & sec1fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Case x = 2
sec2fol = "\Section 2 Jobs Created Last Week (excludes NRT Jobs)"
ActiveWorkbook.SaveAs Filename:=fName & sec2fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Case x = 3
sec3fol = "\Section 3 Late Jobs"
ActiveWorkbook.SaveAs Filename:=fName & sec3fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Case x = 4
sec4fol = "Section 4 Unnegotiated Jobs"
ActiveWorkbook.SaveAs Filename:=fName & sec4fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Case x = 5
sec5fol = "\Section 5 Jobs To Go (Excludes NRT Jobs)"
ActiveWorkbook.SaveAs Filename:=fName & sec5fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Select
And
With Sheets(1)
sec1fol = "Section 1 Jobs Released Last Week (excludes NRT Jobs)"
ActiveWorkbook.SaveAs Filename:=fName & sec1fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End With
With Sheets(2)
sec2fol = "Section 2 Jobs Created Last Week (excludes NRT Jobs)"
ActiveWorkbook.SaveAs Filename:=fName & sec2fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End With
With Sheets(3)
sec3fol = "Section 3 Late Jobs"
ActiveWorkbook.SaveAs Filename:=fName & sec3fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End With
With Sheets(4)
sec4fol = "Section 4 Unnegotiated Jobs"
ActiveWorkbook.SaveAs Filename:=fName & sec4fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End With
With Sheets(5)
sec5fol = "Section 5 Jobs To Go (Excludes NRT Jobs)"
ActiveWorkbook.SaveAs Filename:=fName & sec5fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End With
With Sheets(6)
sec6fol = "Section 6 Jobs To Go (NRT Jobs)"
ActiveWorkbook.SaveAs Filename:=fName & sec6fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End With
This code partially works, but only with the first sheet and then it stops.
Sub SaveWS_to_file()
Dim x As Integer, Name As String, Name2 As String, Name3 As String, fName As String, DateString As String, _
sec1fol As String, sec2fol As String, sec3fol As String, sec4fol As String, sec5fol As String, sec6fol As String
On Error GoTo Error_Handler
For x = 1 To Sheets.Count
Name = "\\MARNV006\BM\Master Scheduling\DSC 2.3.4 Engineering Job Release Metrics\"
Name = Name & "EDW Crystal Reports (Automation)\Test files\Section "
Name = Name & x & ".xls"
Sheets("Section " & x).Copy
ChDir "\\MARNV006\BM\Master Scheduling\DSC 2.3.4 Engineering Job Release Metrics\EDW Crystal Reports (Automation)\Test files"
Name2 = "\\insitefs\www\htdocs\c130\comm\metrics\blue\deck_reports\"
Name2 = Name2 & "Section " & x & ".xls"
Sheets("Section " & x).Copy
ChDir "\\insitefs\www\htdocs\c130\comm\metrics\blue\deck_reports\"
fName = "\\marnv006\Bm\Master Scheduling\DSC 2.3.4 Engineering Job Release Metrics\Blue Deck\Blue Deck "
fName = fName & Year(Date)
DateString = Format(Date, "mm-dd-yyyy")
'Deletes file if it already exists
On Error GoTo Error_Handler
ActiveWorkbook.SaveAs Filename:=Name, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWorkbook.SaveAs Filename:=Name2, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
With Sheets(x)
Select Case x
Case x = 1
sec1fol = "\Section 1 Jobs Released Last Week (excludes NRT Jobs)"
ActiveWorkbook.SaveAs Filename:=fName & sec1fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Case x = 2
sec2fol = "\Section 2 Jobs Created Last Week (excludes NRT Jobs)"
ActiveWorkbook.SaveAs Filename:=fName & sec2fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Case x = 3
sec3fol = "\Section 3 Late Jobs"
ActiveWorkbook.SaveAs Filename:=fName & sec3fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Case x = 4
sec4fol = "Section 4 Unnegotiated Jobs"
ActiveWorkbook.SaveAs Filename:=fName & sec4fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Case x = 5
sec5fol = "\Section 5 Jobs To Go (Excludes NRT Jobs)"
ActiveWorkbook.SaveAs Filename:=fName & sec5fol & "_" & DateString & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Select
End With
'Deletes file if it already exists
On Error GoTo Error_Handler
ActiveWindow.Close
Next x
Exit_Procedure:
Exit Sub
Error_Handler:
MsgBox "An error has occurred in this application. " _
& "Please contact your technical support person and " _
& "tell them this information:" _
& vbCrLf & vbCrLf & "Error Number " & Err.Number & ", " _
& Err.Description, _
Buttons:=vbCritical, Title:="DMT Error"
Resume Exit_Procedure
Resume
Error [(errornumber)]
End Sub