PDF para Excel em C# .NET

A conversão de PDF para Excel é um caso de uso importante quando você precisa exportar os dados tabulares de documentos PDF para planilhas do Excel. Copiar/exportar os dados do PDF para o Excel manualmente pode ser uma tarefa demorada quando você está lidando com vários documentos. Então, por que não automatizar esse processo e minimizar o tempo e o esforço? Neste artigo, você aprenderá como converter PDF para Excel programaticamente usando C# .NET.

Convertendo PDF para Excel em C# .NET

Este artigo aborda as seguintes conversões de PDF para Excel usando C#.

  • Convertendo PDF para o formato XLS.
  • Convertendo PDF para o formato XLSX.
  • Inserindo uma primeira coluna em branco na planilha do Excel convertida.
  • Minimizando o número de planilhas na planilha Excel convertida.

Para conversão de PDF para Excel em C#, usaremos a API Aspose.PDF for .NET que suporta a criação e manipulação de documentos PDF, bem como a conversão de arquivos PDF para outros formatos. Você pode baixar DLL da API ou instalá-la usando uma das seguintes maneiras.

Instalar via Gerenciador de Pacotes NuGet

  • Abra/crie o projeto no Visual Studio.
  • Vá para NuGet Package Manager e pesquise Aspose.PDF.
  • Instale a API.

Instalar via Console do Gerenciador de Pacotes

PM> Install-Package Aspose.PDF

Convertendo PDF para XLS em C#

Para converter um documento PDF para a planilha XLS, basta carregar o arquivo PDF e salvá-lo com a extensão “.xls”. O exemplo de código a seguir mostra como converter PDF para Excel no formato XLS usando C#.

// Carregar documento PDF
Document pdfDocument = new Document("sampletable.pdf");
ExcelSaveOptions options = new ExcelSaveOptions(); 
// Salvar arquivo de saída
pdfDocument.Save("Excel.xls", options);

Documento PDF

Planilha Excel convertida

Convertendo PDF para XLSX em C#

Por padrão, o Aspose.PDF converte o documento PDF para o formato XLS. Caso você queira obter a planilha do Excel convertida no formato XLSX, você pode especificá-la usando a classe ExcelSaveOptions. O exemplo de código a seguir mostra como converter um documento PDF para Excel com formato XLSX usando C#.

// Carregar documento PDF
Document pdfDocument = new Document("sampletable.pdf");
// Inicializar ExcelSaveOptions
ExcelSaveOptions options = new ExcelSaveOptions();
// Definir formato de saída
options.Format = ExcelSaveOptions.ExcelFormat.XLSX;
// Salvar arquivo de saída
pdfDocument.Save("Excel.xlsx", options);

Converter PDF para Excel com uma primeira coluna em branco

Você também pode inserir uma primeira coluna em branco na planilha Excel convertida. Isso pode ser feito usando a opção ExcelSaveOptions.InsertBlankColumnAtFirst conforme mostrado no exemplo de código a seguir.

// Carregar documento PDF
Document pdfDocument = new Document("sampletable.pdf");
// Inicializar ExcelSaveOptions
ExcelSaveOptions options = new ExcelSaveOptions();
// Definir formato de saída
options.Format = ExcelSaveOptions.ExcelFormat.XLSX;
// Para inserir uma coluna em branco como primeira coluna da planilha 
options.InsertBlankColumnAtFirst = true;
// Salvar arquivo de saída
pdfDocument.Save("Excel.xlsx", options);

Converta PDF para Excel com Número Minimizado de Planilhas

Por padrão, cada página no documento PDF de entrada é convertida em uma planilha separada. Para os grandes documentos PDF com várias páginas, a planilha Excel convertida também conterá várias planilhas. Nesse caso, você pode personalizar a conversão de PDF para Excel e minimizar o número de planilhas na planilha convertida usando a opção ExcelSaveOptions.MinimizeTheNumberOfWorksheets.

O exemplo de código a seguir mostra como minimizar o número de planilhas na conversão de PDF para Excel usando C#.

// Carregar documento PDF
Document pdfDocument = new Document("sampletable.pdf");
// Inicializar ExcelSaveOptions
ExcelSaveOptions options = new ExcelSaveOptions();
// Definir formato de saída
options.Format = ExcelSaveOptions.ExcelFormat.XLSX;
// Minimizar o número de planilhas
options.MinimizeTheNumberOfWorksheets = true;
// Salvar arquivo de saída
pdfDocument.Save("Excel.xlsx", options);

Leia mais sobre Aspose.PDF para .NET aqui.

Artigos relacionados