C# Copiar hojas de trabajo en Excel

2023-10-31 03:35:54

Instalado a través de NuGet

PM> Install-Package Spire.XLS

enlaces relacionados

La función de copia de Excel le permite no solo copiar hojas de trabajo dentro de un libro de Excel, sino también copiar hojas de trabajo entre diferentes libros de Excel. Este artículo presentará soluciones para copiar hojas de trabajo dentro de un libro de Excel y entre diferentes libros a través de Spire.XLS for .NET en C#, VB.NET. Además, todos los formatos de celda de las hojas de cálculo originales de Excel se mantendrán por completo.

Instalar Spire.XLS for .NET

Para empezar, debe agregar los archivos DLL incluidos en el paquete Spire.XLS for .NET como referencias en su proyecto .NET. Los archivos DLL se pueden descargar desde este enlace o instalar a través de NuGet.

  • Package Manager
PM> Install-Package Spire.XLS

Copie hojas de trabajo de Excel dentro del libro de Excel

Los siguientes son los pasos para duplicar hojas de trabajo dentro de un libro de Excel.

  • Inicialice una instancia de la clase Workbook.
  • Cargue un archivo de Excel usando el método Workbook.LoadFromFile().
  • Agregue una nueva hoja en blanco al libro usando el método WorksheetCollection.Add().
  • Copie la hoja de trabajo original a la nueva hoja usando el método Worksheet.CopyFrom().
  • Utilice el método Workbook.SaveToFile() para guardar los cambios en otro archivo.
  • C#
  • VB.NET
using Spire.Xls;
    
    namespace CopyExcelworksheet
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Load the sample Excel
                Workbook workbook = new Workbook();
                workbook.LoadFromFile("Sample.xlsx");
    
                //Add worksheet and set its name
                workbook.Worksheets.Add("Sheet1_Copy");
    
               //copy worksheet to the new added worksheets
               workbook.Worksheets[1].CopyFrom(workbook.Worksheets[0]);
    
                //Save the Excel workbook.
                workbook.SaveToFile("Duplicatesheet.xlsx", ExcelVersion.Version2013);
                System.Diagnostics.Process.Start("Duplicatesheet.xlsx");
    
            }
        }
    }
Imports Spire.Xls
    
    Namespace CopyExcelworksheet
    
        Class Program
    
            Private Shared Sub Main(ByVal args() As String)
                'Load the sample Excel
                Dim workbook As Workbook = New Workbook
                workbook.LoadFromFile("Sample.xlsx")
                'Add worksheet and set its name
                workbook.Worksheets.Add("Sheet1_Copy")
                'copy worksheet to the new added worksheets
                workbook.Worksheets(1).CopyFrom(workbook.Worksheets(0))
                'Save the Excel workbook.
                workbook.SaveToFile("Duplicatesheet.xlsx", ExcelVersion.Version2013)
                System.Diagnostics.Process.Start("Duplicatesheet.xlsx")
            End Sub
        End Class
    End Namespace

C#/VB.NET: Copy Worksheets in Excel

Copie hojas de trabajo de Excel entre libros de Excel

Los siguientes son los pasos para duplicar hojas de trabajo dentro de un libro de Excel.

  • Inicialice una instancia de la clase Workbook.
  • Cargue un archivo de Excel usando el método Workbook.LoadFromFile().
  • Obtenga la primera hoja de trabajo.
  • Cargue otro documento de muestra de Excel
  • Agregue una nueva hoja en blanco al segundo libro usando el método WorksheetCollection.Add().
  • Copie la hoja de trabajo original a la nueva hoja usando el método Worksheet.CopyFrom().
  • Utilice el método Workbook.SaveToFile() para guardar los cambios en otro archivo.
  • C#
  • VB.NET
using Spire.Xls;
    
    namespace CopyExcelworksheet
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Load the sample Excel and get the first worksheet
                Workbook workbook = new Workbook();
                workbook.LoadFromFile("Sample.xlsx");
                Worksheet sheet = workbook.Worksheets[0];
                //Load the second Excel workbook
                Workbook workbook2 = new Workbook();
                workbook2.LoadFromFile("New.xlsx");
                //Add a new worksheet and set its name
                Worksheet targetWorksheet = workbook2.Worksheets.Add("added");
                //Copy the original worksheet to the new added worksheets
                targetWorksheet.CopyFrom(sheet);
                //Save the Excel workbook.
                workbook2.SaveToFile("CopySheetBetweenWorkbooks.xlsx", FileFormat.Version2013);
                System.Diagnostics.Process.Start("CopySheetBetweenWorkbooks.xlsx");
    
            }
        }
    }
Imports Spire.Xls
    
    Namespace CopyExcelworksheet
    
        Class Program
    
            Private Shared Sub Main(ByVal args() As String)
                'Load the sample Excel and get the first worksheet
                Dim workbook As Workbook = New Workbook
                workbook.LoadFromFile("Sample.xlsx")
                Dim sheet As Worksheet = workbook.Worksheets(0)
                'Load the second Excel workbook
                Dim workbook2 As Workbook = New Workbook
                workbook2.LoadFromFile("New.xlsx")
                'Add a new worksheet and set its name
                Dim targetWorksheet As Worksheet = workbook2.Worksheets.Add("added")
                'Copy the original worksheet to the new added worksheets
                targetWorksheet.CopyFrom(sheet)
                'Save the Excel workbook.
                workbook2.SaveToFile("CopySheetBetweenWorkbooks.xlsx", FileFormat.Version2013)
                System.Diagnostics.Process.Start("CopySheetBetweenWorkbooks.xlsx")
            End Sub
        End Class
    End Namespace

C#/VB.NET: Copy Worksheets in Excel

Solicite una licencia temporal

Si desea eliminar el mensaje de evaluación de los documentos generados o deshacerse de las limitaciones de la función, por favor solicitar una licencia de prueba de 30 días para ti.

Ver también