Método Worksheet.Copy (Excel)
Copia la hoja en otra ubicación del libro actual o en un nuevo libro.
Sintaxis
expresión. Copiar (Antes, Después)
Expresión Variable que representa un objeto Worksheet .
Parameters
Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
---|---|---|---|
Before | Opcional | Variant | La hoja delante de la cual se colocará la hoja copiada. No se puede especificar Before si se especifica After. |
After | Opcional | Variant | La hoja detrás de la cual se colocará la hoja copiada. No se puede especificar After si se especifica Before. |
Comentarios
Si no especifica Antes o Después, Microsoft Excel crea un nuevo libro que contiene el objeto Worksheet copiado. El libro recién creado contiene la propiedad Application.ActiveWorkbook y contiene una sola hoja de cálculo. La hoja de cálculo única conserva las propiedades Name y CodeName de la hoja de cálculo de origen. Si la hoja de cálculo copiada contenía una hoja de código de hoja de cálculo en un proyecto VBA, también se lleva al nuevo libro.
Una selección de matriz de varias hojas de cálculo se puede copiar en un nuevo objeto Workbook en blanco de forma similar.
El origen y el destino deben estar en la misma instancia de Excel.Application; de lo contrario, generará un error en tiempo de ejecución "1004": no se admite dicha interfaz, si se usó algo parecido Sheet1.Copy objWb.Sheets(1)
o un error en tiempo de ejecución "1004": error del método Copy de la clase Worksheet, si se usó algo parecido ThisWorkbook.Worksheets("Sheet1").Copy objWb.Sheets(1)
.
Ejemplo:
Este ejemplo copia Sheet1, colocando la copia detrás de Sheet3.
Worksheets("Sheet1").Copy After:=Worksheets("Sheet3")
En este ejemplo primero se copia Sheet1 en un nuevo libro en blanco y, a continuación, se guarda y se cierra el nuevo libro.
Worksheets("Sheet1").Copy
With ActiveWorkbook
.SaveAs Filename:=Environ("TEMP") & "\New1.xlsx", FileFormat:=xlOpenXMLWorkbook
.Close SaveChanges:=False
End With
En este ejemplo se copian las hojas de cálculo Sheet1, Sheet2 y Sheet4 en un nuevo libro en blanco y, a continuación, se guarda y se cierra el nuevo libro.
Worksheets(Array("Sheet1", "Sheet2", "Sheet4")).Copy
With ActiveWorkbook
.SaveAs Filename:=Environ("TEMP") & "\New3.xlsx", FileFormat:=xlOpenXMLWorkbook
.Close SaveChanges:=False
End With
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.