Sim, aqui está uma amostra.
Sub Sheet_SaveAs()
Dim wb As Workbook
Sheets("Sheet1").Copy
Set wb = ActiveWorkbook
With wb
.SaveAs ThisWorkbook.Path & "\Workbookname.xlsx"
'.Close False
End With
End Sub
É possível usar o VBA para selecionar determinadas planilhas em uma pasta de trabalho do Excel e salvar como novo arquivo de pasta de trabalho?
Sim, aqui está uma amostra.
Sub Sheet_SaveAs()
Dim wb As Workbook
Sheets("Sheet1").Copy
Set wb = ActiveWorkbook
With wb
.SaveAs ThisWorkbook.Path & "\Workbookname.xlsx"
'.Close False
End With
End Sub
Obrigado Petr. Eu consegui hackear o código abaixo, gravando-me e pesquisando o resto, pois precisava salvar várias pastas de trabalho e adicionar a data automaticamente. Parece estar funcionando.
Sub Seperate_Sheets()
Dim Path1 As String
Dim Path2 As String
Dim Path3 As String
Path1 = ActiveWorkbook.Path & "\" & "Tracker 1" & Format(Now, " dd-mm-yyyy ")
Path2 = ActiveWorkbook.Path & "\" & "Tracker 2" & Format(Now, " dd-mm-yyyy ")
Path3 = ActiveWorkbook.Path & "\" & "Tracker 3" & Format(Now, " dd-mm-yyyy ")
Sheets(Array("sheet1", "sheet2", "sheet3")).Move
ActiveWorkbook.SaveAs Filename:=Path1, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWindow.Close
Sheets(Array("sheet3", "sheet4", "sheet5")).Move
ActiveWorkbook.SaveAs Filename:=Path2, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWindow.Close
Sheets(Array("sheet6", "sheet7", "sheet8")).Move
ActiveWorkbook.SaveAs Filename:=Path3, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWindow.Close
End Sub