Cómo: Copiar hojas de cálculo mediante programación
Puede crear una copia de una hoja de cálculo e insertarla antes o después de otra hoja existente en el libro.Si no especifica dónde insertarla, Excel crea un nuevo libro para la nueva hoja.
Se aplica a: La información de este tema se aplica a los proyectos de nivel de documento y los proyectos de nivel de aplicación para Excel 2013 y Excel 2010. Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto de Office.
[!NOTA]
Tanto si copia la hoja de cálculo mediante programación como si el usuario final copia la hoja de cálculo manualmente, no hay ningún código detrás de la nueva hoja de cálculo y los controles de la nueva hoja de cálculo no funcionan.Esto se debe a que la hoja de cálculo recientemente copiada es un objeto Microsoft.Office.Interop.Excel.Worksheet y no un elemento host de Microsoft.Office.Tools.Excel.Worksheet.Los controles de formularios Windows Forms y los controles host sólo se pueden agregar a elementos host.Para obtener más información, vea Limitaciones de programación de elementos y controles Host.
Para agregar una hoja de cálculo copiada a un libro en una personalización en el nivel del documento
Utilice el método Copy para copiar la primera hoja de cálculo del libro actual y colocarla después de la tercera hoja.
Globals.Sheet1.Copy(After:=Globals.ThisWorkbook.Sheets(3))
Globals.Sheet1.Copy(Globals.ThisWorkbook.Sheets[3]);
Para agregar una hoja de cálculo copiada a un libro en un complemento en el nivel de la aplicación
Utilice el método Copy para copiar la primera hoja de cálculo del libro actual y colocarla después de la tercera hoja.
Dim worksheet1 As Excel.Worksheet = CType(Application.ActiveWorkbook.Worksheets(1), _ Excel.Worksheet) Dim worksheet3 As Excel.Worksheet = CType(Application.ActiveWorkbook.Worksheets(3), _ Excel.Worksheet) worksheet1.Copy(After:=worksheet3)
Excel.Worksheet worksheet1 = ((Excel.Worksheet)Application.ActiveWorkbook.Worksheets[1]); Excel.Worksheet worksheet3 = ((Excel.Worksheet)Application.ActiveWorkbook.Worksheets[3]); worksheet1.Copy(worksheet3);
Vea también
Tareas
Cómo: Agregar nuevas hojas de cálculo a libros mediante programación
Cómo: Eliminar hojas de cálculo de libros mediante programación
Cómo: Seleccionar hojas de cálculo mediante programación
Conceptos
Información general sobre elementos y controles Host
Automatizar Excel usando objetos extendidos
Acceso global a objetos en los proyectos de Office