Boa tarde,
estou a tentar criar um código para que quando o numero de sheets for maior ou igual a 50. deverá ser feita uma cópia desse ficheiro, e voltar a criar um ficheiro com o nome original ("Book_O"), pois uso muito esse nome durante o codigo. quando tento 'criar novo workbook, com o novo Book_O o ficheiro fica com a igual ao de origem, ou sejam, nao se encontra vazio, encontra-se com as 50 sheets preenchidas. podem ajudar?
If ComboBox1.Value = "DesgloseAN" And ComboBox2.Value = "Consolidada" And ComboBox3.Value = "Orçamento (Pto)" Then
Workbooks.Open (Ci & Book_O), UpdateLinks:=False, ReadOnly:=False, Format:=5
If Sheets.Count >= 50 Then
Windows("Book_O.xlsx").Activate
ActiveWorkbook.Save
ChDir "G:OrcControloSCCJoana"
ActiveWorkbook.SaveAs Filename:=("G:OrcControloSCCJoanaBook_O__" & Month(Date) & "_" & Year(Date) & ".xlsx"), FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
'criar novo workbook Book_O
Set NewBook = Workbooks.Add
With NewBook
.Title = "Book_O"
.Subject = "Orçamento (Pto)"
.SaveAs Filename:="Book_O.xlsx"
End With
Sheets("Sheet2").Select
ActiveWindow.SelectedSheets.Delete
Sheets("Sheet3").Select
ActiveWindow.SelectedSheets.Delete
ActiveWorkbook.Close
MsgBox "Foi criado um novo ficheiro Book_O", vbInformation
End If
Postado : 02/02/2015 10:31 am