Os arquivos Excel (XLS, XLSX) e PDF estão entre os formatos de documento amplamente usados em quase todos os negócios. Para esses arquivos comumente usados, há muitos cenários nos quais precisa converter um arquivo em outro formato.Neste artigo, aprenderemos diferentes maneiras de como converter planilhas do Excel em formato PDF usando C# com aplicativos .NET.

Converter planilha do Excel para PDF usando C#

.NET API para conversão de arquivos do Excel em PDF

GroupDocs.Conversion fornece APIs que permitem que os arquivos do Excel sejam convertidos para o formato PDF em aplicativos .NET. Neste artigo, usaremos GroupDocs.Conversion for .NET para converter os dados dos arquivos Excel XLS/XLSX em formato PDF. Além disso, a API suporta a conversão de muitos outros formatos de arquivo, como documentos de processamento de texto, planilhas, apresentações, eBooks, imagens, etc., mencionados na documentação.

Você pode baixar o instalador DLLs ou MSI da seção de downloads ou instalar a API em seu aplicativo .NET por meio do NuGet.

PM> Install-Package GroupDocs.Conversion

Converter planilhas do Excel para PDF - C#

As etapas a seguir convertem a pasta de trabalho completa (todas as planilhas) para o formato PDF usando C#.

Veja a seguir o código-fonte C# sobre como converter a pasta de trabalho completa do Excel em PDF no aplicativo .NET.

/*
 * Converta todas as planilhas do Excel para o formato PDF usando C#
 */
// Preparar opções de carregamento e intervalo para o arquivo XLSX de origem
Func<LoadOptions> loadOptions = () => new SpreadsheetLoadOptions
{
    OnePagePerSheet = true
};
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx", loadOptions))
{
    // Converta e salve a planilha em formato PDF
    converter.Convert(@"path/all-sheets-converted.pdf", new PdfConvertOptions());
}
Converter PDF de dados do Excel

Sequência de conversão de planilhas do Excel para PDF - C#

Nem sempre é necessário transformar a pasta de trabalho completa. Também podemos converter qualquer número consecutivo de folhas. A seguir estão as etapas para converter qualquer subsequência da(s) planilha(s) da pasta de trabalho do Excel em formato PDF usando C#.

  • Carregue o arquivo Excel usando o Converter.
  • Defina as opções de conversão usando PdfConvertOptions.
  • Defina o número da folha inicial e o número de outras folhas na sequência.
  • Chame o método Convert() com as opções conversion para obter o subconjunto de planilhas em sequência salva no formato PDF.

A seguir está o código-fonte C# que converte as planilhas em sequência, ou seja, números de planilha 2,3 e 4 em PDF dentro do aplicativo .NET.

/*
 * Converter sequência de planilhas do Excel para formato PDF usando C#
 */
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx"))
{
    // Defina o número da folha inicial e a contagem consecutiva de folhas
    var convertOptions = new PdfConvertOptions()
    {
        PageNumber = 2,
        PagesCount = 3
    };
    // Converta e salve a planilha em formato PDF
    converter.Convert(@"path/sequential-sheets-converted.pdf", convertOptions);
}

Folhas de Excel específicas para conversão de PDF - C#

Podemos simplesmente fornecer a lista dos números das folhas para a conversão de folhas específicas. A seguir estão as etapas de como converter qualquer lista específica de números de planilha em formato PDF usando C#.

  • Carregue o arquivo de planilha usando o Converter.
  • Selecione os números das folhas e defina como lista usando PdfConvertOptions.
  • Chame o método Convert() com as opções de conversão para converter as planilhas listadas em formato PDF.

O trecho de código C# a seguir converte os números de planilha 1, 3 e 5 em PDF no aplicativo .NET.

/*
 * Converta a lista especificada de planilhas do Excel para o formato PDF usando C#
 */
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx"))
{
    // Defina a lista para números de planilhas na conversão
    var convertOptions = new PdfConvertOptions()
    {
        Pages = new System.Collections.Generic.List<int> { 1,3,5}
    };
    // Converta e salve a planilha em formato PDF
    converter.Convert(@"path/selected-sheets-conversion.pdf", convertOptions);
}

Converter o intervalo de células selecionado da planilha do Excel em PDF - C

Por último, mas não menos importante, na verdade, o mais complicado, também podemos converter qualquer intervalo de células de planilhas do Excel de maneira quase semelhante a outras abordagens. A seguir estão as etapas para converter qualquer intervalo de células de planilha(s) da pasta de trabalho em formato PDF usando C#.

  • Em primeiro lugar, defina o intervalo de células para conversão usando SpreadsheetLoadOptions.
  • Carregue o arquivo de planilha usando o Converter.
  • Selecione as folhas pelos números exatos das folhas ou pela subsequência usando PdfConvertOptions.
  • Chame o método Convert() com as opções de conversão para converter o intervalo de células selecionado das planilhas selecionadas em formato PDF.

O código a seguir converte o intervalo de células (A1:C20) dos números de planilha 2, 3 e 4 para o formato PDF usando C#.

/*
 * Converta o intervalo de células especificado de planilhas do Excel especificadas para o formato PDF usando C#
 */
// Preparar opções de carregamento e intervalo para o arquivo XLSX de origem
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
        // Páginas = new System.Collections.Generic.List<int> { 2,3,4}
    };
    // Salvar como PDF após a conversão
    converter.Convert(@"path/cell-range-converted.pdf", convertOptions);
}

Conclusão

Para concluir, aprendemos diferentes maneiras de converter planilhas do Excel em formato PDF usando C#. Primeiramente, procuramos converter a pasta de trabalho completa para o formato PDF, depois convertemos a subsequência de planilhas. Mais tarde, aprendemos como converter qualquer planilha fornecendo a lista de números exatos de planilha e, por último, obtivemos o arquivo PDF do intervalo de células selecionado da(s) planilha(s).

Saiba mais sobre as APIs GroupDocs.Conversion na documentação. Para dúvidas, entre em contato conosco através do fórum.

Veja também