I file Excel (XLS, XLSX) e PDF sono tra quei formati di documenti ampiamente utilizzati in quasi tutte le aziende. Per tali file comunemente usati, ci sono molti scenari in cui necessario convertire un file in un altro formato In questo articolo impareremo diversi modi per convertire fogli di calcolo Excel in formato PDF utilizzando C# con applicazioni .NET.

Converti foglio di calcolo Excel in PDF usando C#

API .NET per la conversione di file Excel in PDF

GroupDocs.Conversion fornisce API che consentono la conversione dei file Excel in formato PDF all’interno delle applicazioni .NET. In questo articolo, utilizzeremo GroupDocs.Conversion for .NET per convertire i dati dei file XLS/XLSX di Excel in formato PDF. Inoltre, l’API supporta la conversione di molti altri formati di file come documenti di elaborazione testi, fogli di calcolo, presentazioni, eBook, immagini, ecc. menzionati nella documentazione.

Puoi scaricare le DLL o il programma di installazione MSI dalla sezione download o installare l’API nella tua applicazione .NET tramite NuGet.

PM> Install-Package GroupDocs.Conversion

Converti fogli Excel in PDF - C#

I passaggi seguenti convertono la cartella di lavoro completa (tutti i fogli) in formato PDF usando C#.

Di seguito è riportato il codice sorgente C# per come convertire la cartella di lavoro completa di Excel in PDF all’interno dell’applicazione .NET.

/*
 * Converti tutti i fogli Excel in formato PDF usando C#
 */
// Prepara le opzioni di caricamento e l'intervallo per il file XLSX di origine
Func<LoadOptions> loadOptions = () => new SpreadsheetLoadOptions
{
    OnePagePerSheet = true
};
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx", loadOptions))
{
    // Converti e salva il foglio di calcolo in formato PDF
    converter.Convert(@"path/all-sheets-converted.pdf", new PdfConvertOptions());
}
Converti PDF da dati Excel

Sequenza di conversione di fogli Excel in PDF - C#

Non è sempre necessario trasformare la cartella di lavoro completa. Possiamo anche convertire qualsiasi numero consecutivo di fogli. Di seguito sono riportati i passaggi per convertire qualsiasi sottosequenza dei fogli della cartella di lavoro di Excel in formato PDF utilizzando C#.

  • Carica il file Excel utilizzando il Converter.
  • Definisci le opzioni di conversione utilizzando PdfConvertOptions.
  • Impostare il numero di foglio iniziale e il numero di ulteriori fogli in sequenza.
  • Chiama il metodo Convert() con le opzioni conversione per ottenere il sottoinsieme di fogli in sequenza salvati in formato PDF.

Quello che segue è il codice sorgente C# che converte i fogli in sequenza, ovvero i numeri di foglio 2,3 e 4 in PDF all’interno dell’applicazione .NET.

/*
 * Converti sequenza di fogli Excel in formato PDF usando C#
 */
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx"))
{
    // Impostare il numero del foglio iniziale e il conteggio dei fogli consecutivo
    var convertOptions = new PdfConvertOptions()
    {
        PageNumber = 2,
        PagesCount = 3
    };
    // Converti e salva il foglio di calcolo in formato PDF
    converter.Convert(@"path/sequential-sheets-converted.pdf", convertOptions);
}

Conversione da fogli Excel a PDF specifici - C#

Possiamo semplicemente fornire l’elenco dei numeri dei fogli per la conversione di fogli specifici. Di seguito sono riportati i passaggi su come convertire qualsiasi elenco specifico di numeri di foglio in formato PDF utilizzando C#.

  • Carica il file del foglio di calcolo utilizzando il Converter.
  • Seleziona i numeri dei fogli e imposta come elenco utilizzando PdfConvertOptions.
  • Chiama il metodo Convert() con le opzioni di conversione per convertire i fogli elencati in formato PDF.

Il seguente frammento di codice C# converte i numeri di foglio 1, 3 e 5 in PDF all’interno dell’applicazione .NET.

/*
 * Converti l'elenco specificato di fogli Excel in formato PDF usando C#
 */
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx"))
{
    // Imposta l'elenco sui numeri dei fogli durante la conversione
    var convertOptions = new PdfConvertOptions()
    {
        Pages = new System.Collections.Generic.List<int> { 1,3,5}
    };
    // Converti e salva il foglio di calcolo in formato PDF
    converter.Convert(@"path/selected-sheets-conversion.pdf", convertOptions);
}

Converti l’intervallo di celle selezionato del foglio Excel in PDF - C#

Ultimo ma non meno importante, in effetti, il più complicato, possiamo anche convertire qualsiasi intervallo di celle di fogli Excel in modo quasi simile ad altri approcci. Di seguito sono riportati i passaggi per convertire qualsiasi intervallo di celle di fogli di cartelle di lavoro in formato PDF utilizzando C#.

  • Innanzitutto, definisci l’intervallo di celle per la conversione utilizzando SpreadsheetLoadOptions.
  • Carica il file del foglio di calcolo utilizzando il Converter.
  • Seleziona i fogli in base ai numeri esatti dei fogli o in una sottosequenza utilizzando PdfConvertOptions.
  • Chiama il metodo Convert() con le opzioni di conversione per convertire l’intervallo di celle selezionato dei fogli selezionati in formato PDF.

Il codice seguente converte l’intervallo di celle (A1:C20) dei fogli numeri 2, 3 e 4 in formato PDF usando C#.

/*
 * Converti l'intervallo di celle specificato dei fogli Excel specificati in formato PDF utilizzando C#
 */
// Prepara le opzioni di caricamento e l'intervallo per il file XLSX di origine
Func<LoadOptions> loadOptions = () => new SpreadsheetLoadOptions
{
    ConvertRange = "A1:C20"
};
using (var converter = new Converter(@"path/spreadsheet.xlsx", loadOptions))
{
    var convertOptions = new PdfConvertOptions()
    {
        PageNumber = 2,
        PagesCount = 3
        // Pagine = nuovo System.Collections.Generic.List<int> { 2,3,4}
    };
    // Salva come PDF dopo la conversione
    converter.Convert(@"path/cell-range-converted.pdf", convertOptions);
}

Conclusione

Per concludere, abbiamo imparato diversi modi per convertire fogli di calcolo Excel in formato PDF utilizzando C#. In primo luogo, abbiamo cercato di convertire la cartella di lavoro completa in formato PDF, quindi abbiamo convertito la sottosequenza di fogli. Successivamente, abbiamo imparato come convertire qualsiasi foglio fornendo l’elenco dei numeri di foglio esatti e, infine, abbiamo ottenuto il file PDF dall’intervallo di celle selezionato dei fogli selezionati.

Ulteriori informazioni sulle API GroupDocs.Conversion dalla documentazione. Per domande, contattaci tramite il forum.

Guarda anche