Copia fogli di lavoro Excel in C#

In alcuni casi, potrebbe essere necessario copiare fogli di lavoro all’interno di una cartella di lavoro di Excel o da una cartella di lavoro all’altra. D’altra parte, in diversi scenari è necessario anche spostare i fogli di lavoro per cambiarne la posizione all’interno di una cartella di lavoro. Per eseguire le attività sopra menzionate a livello di codice, in questo articolo viene illustrato come copiare fogli di lavoro di Excel all’interno di cartelle di lavoro usando C#. Inoltre, illustra anche come modificare la posizione di un foglio di lavoro in una cartella di lavoro di Excel.

API C# per copiare fogli di lavoro Excel

Per copiare fogli di lavoro in file Excel, sfrutteremo le potenti capacità di manipolazione dei fogli di calcolo di Aspose.Cells for .NET. L’API offre un’ampia gamma di funzionalità per generare ed elaborare file Excel dall’interno delle applicazioni .NET. Puoi scaricare i binari dell’API o installarlo utilizzando NuGet.

PM> Install-Package Aspose.Cells

Copia i fogli di lavoro di Excel usando C#

Di seguito sono riportati i passaggi per copiare un foglio di lavoro di Excel all’interno di una cartella di lavoro usando C#.

Nell’esempio di codice seguente viene illustrato come copiare un foglio di lavoro di Excel in una cartella di lavoro.

// Apri un file Excel esistente
Workbook wb = new Workbook("workbook.xlsx");

// Creare un oggetto WorksheetCollection con riferimento ai fogli della cartella di lavoro
WorksheetCollection sheets = wb.Worksheets;

// Copia i dati in un nuovo foglio da un foglio esistente all'interno della cartella di lavoro
sheets.AddCopy("Sheet1");

// Salva il file Excel
wb.Save("CopyWithinWorkbook.xlsx");

Copia i fogli di lavoro di Excel da una cartella di lavoro a un’altra

Ora, diamo un’occhiata a come copiare un foglio di lavoro da una cartella di lavoro di Excel a un’altra. Di seguito sono riportati i passaggi per eseguire questa operazione.

Nell’esempio di codice seguente viene illustrato come copiare un foglio di lavoro da una cartella di lavoro a un’altra in C#.

// Apri file Excel sorgente
Workbook sourceWorkbook = new Workbook("source.xlsx");

// Apri il file Excel di destinazione
Workbook destinationWorkbook = new Workbook("destination.xlsx");

// Copia il primo foglio della cartella di lavoro di origine nella cartella di lavoro di destinazione
destinationWorkbook.Worksheets[0].Copy(sourceWorkbook.Worksheets[0]);

// Salva il file Excel
destinationWorkbook.Save("copy-worksheets.xlsx");

Sposta il foglio di lavoro da una posizione all’altra in C#

Potrebbe verificarsi il caso in cui è necessario riorganizzare le posizioni dei fogli di lavoro in una cartella di lavoro. Puoi farlo spostando i fogli di lavoro nelle posizioni desiderate specificando l’indice. Di seguito sono riportati i passaggi per spostare un foglio di lavoro di Excel da una posizione all’altra.

Nell’esempio di codice seguente viene illustrato come spostare un foglio di lavoro di Excel da una posizione a un’altra usando C#.

// Apri un file excel esistente
Workbook wb = new Workbook("workbook.xlsx");

// Creare un oggetto WorksheetCollection con riferimento ai fogli della cartella di lavoro
WorksheetCollection sheets = wb.Worksheets;

// Ottieni il primo foglio di lavoro.
Worksheet worksheet = sheets[0];

// Sposta il primo foglio nella terza posizione nella cartella di lavoro
worksheet.MoveTo(2);

// Salva il file Excel
wb.Save("move-worksheet.xlsx");

Ottieni una licenza API gratuita

Puoi provare a valutare Aspose.Cells per .NET gratuitamente richiedendo una licenza temporanea.

Conclusione

In questo articolo si è appreso come copiare fogli di lavoro di Excel all’interno di una cartella di lavoro o da una cartella di lavoro a un’altra usando C#. Inoltre, hai visto come spostare un foglio di lavoro di Excel da una posizione all’altra all’interno di una cartella di lavoro. Puoi esplorare altre funzionalità di Aspose.Cells per .NET usando la documentazione. In caso di domande, non esitare a postare sul nostro forum.

Guarda anche