Necesito copiar 4 hojas de trabajo del libro de trabajo A que contiene 5 hojas de trabajo y crear un nuevo libro de trabajo B y pegar las hojas de trabajo copiadas en el nuevo libro de trabajo.
Lo he hecho por una hoja. ¿Cómo puedo mejorar este código?
Sub test()
ThisWorkbook.Sheets.Copy
"Saving the new workbook B
ActiveWorkbook.SaveAs "C:UsersJohnB.xls", FileFormat:=18
End Sub
Respuestas
1 para la respuesta № 1una solución es crear el nuevo libro de trabajo (B) y luego navegar a través de las hojas de trabajo del libro de trabajo (A) copiando solo las hojas de trabajo que desee.
Sub test()
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Add
For Each ws In ThisWorkbook.Worksheets
If Not ws.name = "<name of worksheet you don"t wanto to copy>" Then
ws.Copy after:=wb.Worksheets(wb.Worksheets.Count)
End If
Next
End Sub