USANDO O IRONXL

Converter tabela de dados para Excel em C# (Tutorial com exemplo de código)

Curtis Chau
Curtis Chau
Updated: 28 de junho de 2026

Pode ser difícil alterar programaticamente uma planilha do Excel, por duas razões principais. Primeiro, ao lidar com planilhas, os usuários devem manter uma interface consistente e estrutura de documento, o que nem sempre é simples. Segundo, nem sempre é claro qual código funcionará em situações específicas, particularmente quando cálculos sofisticados estão envolvidos. Há inúmeras razões pelas quais criar programaticamente um arquivo Excel é difícil. Os programadores devem primeiro transformar os dados no documento Excel em um formato legível, depois analisar os dados e analisá-los de volta, o que é ainda mais difícil. Eu tenho uma solução para este problema. Vou ensinar como fazer um arquivo Excel e exportar programaticamente um DataTable para uma planilha Excel sem nenhum problema usando a biblioteca IronXL .NET Excel. Vamos começar:

Recursos do IronXL

  • IronXL é executado em uma variedade de Sistemas Operacionais, incluindo Windows, Linux e macOS.
  • Quase todos os Frameworks .NET são suportados pelo IronXL, incluindo Console, Aplicação Windows Forms e Aplicação Web.
  • IronXL torna a leitura de arquivos Excel direta e fácil.
  • Podemos carregar, editar, exportar DataTables, exportar conjuntos de dados e ler formatos de arquivos Excel como arquivos XLSX, XLS, CSV, TSV, XLST, XLSM e mais com IronXL.
  • IronXL nos permite salvar e exportar arquivos com uma variedade de extensões, incluindo XLS, CSV, TSV, JSON, XLSX e outros.
  • Fórmulas Excel podem ser criadas pelo IronXL.
  • Textos, Números, Fórmulas, Datas, Moeda, Percentagens e outros formatos de dados de células Excel são suportados pelo IronXL.
  • Também oferece várias opções de ordenação como Intervalo, Colunas e Linhas, entre outras.
  • A formatação de células no IronXL inclui fonte, tamanho, padrão de fundo, borda e alinhamento, entre outros.
  • Podemos ler e exportar dados de um arquivo Excel usando IronXL.
  • IronXL não requer que o Excel ou Interop estejam instalados no seu servidor. A API do IronXL é mais rápida e fácil de usar do que o Microsoft Office, Interop e Excel.

1 Criando um Novo Projeto no Visual Studio

Para usar a biblioteca IronXL, devemos criar um projeto .NET no Visual Studio. Você pode usar qualquer versão do Visual Studio, mas a versão mais recente é recomendada. Você pode criar uma aplicação como Windows Forms ou diferentes modelos de projeto, dependendo de suas necessidades. Vou usar a Aplicação de Console para este tutorial, para simplicidade.

Como Exportar Grandes Dados de uma Tabela para Excel em C#, Figura 1: Criar uma nova interface de projeto no Visual Studio Criar uma nova interface de projeto no Visual Studio

Em seguida, insira o nome do projeto e o local do projeto.

Como Exportar Grandes Dados de uma Tabela para Excel em C#, Figura 2: Etapa de Configuração na criação de um novo projeto Etapa de configuração na criação de um novo projeto

Em seguida, selecione o framework abaixo. Neste projeto, vamos usar o .NET Core 6.

Como Exportar Grandes Dados de uma Tabela para Excel em C#, Figura 3: Interface de seleção do .NET Framework UI de seleção do .NET Framework

Uma vez que a aplicação cria a solução, ela abrirá o arquivo program.cs onde você pode inserir o código e compilar/executar a aplicação.

Como Exportar Grandes Dados de uma Tabela para Excel em C#, Figura 4: Arquivo program.cs vazio no novo projeto Arquivo program.cs vazio no novo projeto

Em seguida, podemos adicionar a biblioteca para testar o código.

2 Instalar a Biblioteca IronXL

A Biblioteca IronXL pode ser baixada e instalada de quatro maneiras.

Estes são:

  • Usando o Visual Studio
  • Usando a Linha de Comando do Visual Studio.
  • Download direto do site NuGet .
  • Download direto do site da IronXL.

2.1 Usando Visual Studio

Podemos instalar a biblioteca IronXL usando o Gerenciador de Pacotes NuGet. Você deve primeiro abrir o Gerenciador de Pacotes NuGet e, em seguida, procurar por IronXL na aba de navegação. Selecione IronXL nos resultados de busca e instale. Depois disso, nosso projeto estará pronto para usar a biblioteca IronXL.

A captura de tela abaixo mostra como podemos abrir o Gerenciador de Pacotes NuGet no Visual Studio.

Como Exportar Grandes Dados de uma Tabela para Excel em C#, Figura 5: Navegar até o Gerenciador de Pacotes NuGet no Visual Studio Navegar até o Gerenciador de Pacotes NuGet no Visual Studio

IronXL nos resultados da pesquisa:

Como Exportar Grandes Dados de uma Tabela para Excel em C#, Figura 6: Pesquisar pela biblioteca IronXL Buscar pela biblioteca IronXL

2.2 Usando a Linha de Comando do Visual Studio

Muitas pessoas gostam de usar um Console para realizar operações. Então, podemos instalá-lo pelo Console também. Siga os passos abaixo para instalar o IronXL via linha de comando.

  • No Visual Studio, vá para Ferramentas -> Gerenciador de Pacotes NuGet -> Console do Gerenciador de Pacotes.
  • Insira a seguinte linha na aba do Console do Gerenciador de Pacotes:

PM > Install-Package IronXL.Excel

Agora o pacote será baixado/instalado no projeto atual e estará pronto para uso.

Como Exportar Grandes Dados de uma Tabela para Excel em C#, Figura 7: Instalar o pacote IronXL via Console Instalar pacote IronXL via Console

2.3 Download direto do site do NuGet

A terceira maneira é baixar o pacote NuGet diretamente do site.

  • Navegue até a página oficial do pacote IronXL no NuGet.
  • Selecione a opção de pacote de download no menu à direita.
  • Clique duas vezes no pacote baixado. Será instalado automaticamente. Em seguida, recarregue a solução e comece a usá-la no projeto.

2.4 Download direto do site da IronXL

Clique no link para baixar o pacote mais recente diretamente do site. Uma vez baixado, siga os passos abaixo para adicionar o pacote ao projeto.

  • Clique com o botão direito do mouse no projeto na janela de soluções.
  • Em seguida, selecione as opções de referência e procure o local da referência baixada.
  • Depois, clique em ok para adicionar a referência.

3 Exportar Datatable para Arquivo Excel usando IronXL

IronXL nos permite exportar DataTables para arquivos Excel facilmente com um número limitado de passos.

Primeiro, precisamos incluir o namespace do IronXL como na captura de código abaixo. Uma vez adicionado, podemos usar as classes e métodos do IronXL em nosso código.

Como Exportar Grandes Dados de uma Tabela para Excel em C#, Figura 8: Inclua o namespace do IronXL antes de usar a biblioteca Inclua namespace do IronXL antes de usar a biblioteca

IronXL nos permite criar arquivos Excel e convertê-los em objetos de pasta de trabalho. Após convertê-los em objetos, podemos realizar vários tipos de operações. No exemplo de código abaixo, vamos converter um DataTable em uma planilha Excel, e então podemos criar um arquivo Excel.

using System;
using System.Data;
using IronXL;

public class ExcelExporter
{
    /// <summary>
    /// Exports a DataTable to an Excel file using IronXL.
    /// </summary>
    /// <param name="filePath">The file path where the Excel file will be saved.</param>
    public static void ExportToExcel(string filePath)
    {
        // Creating a DataTable with a single column
        DataTable table = new DataTable();
        table.Columns.Add("DataSet_Animal", typeof(string));

        // Adding some rows to the DataTable
        table.Rows.Add("Lion");
        table.Rows.Add("Tiger");
        table.Rows.Add("Cat");
        table.Rows.Add("Goat");
        table.Rows.Add("Panther");
        table.Rows.Add("Fox");
        table.Rows.Add("Cheetah");

        // Creating a new Excel Workbook
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);

        // Accessing the default worksheet
        WorkSheet ws = wb.DefaultWorkSheet;

        // Iterating through the DataTable rows
        int rowCount = 1;
        foreach (DataRow row in table.Rows)
        {
            // Adding each DataRow's first column value to the corresponding cell in the worksheet
            ws["A" + rowCount].Value = row[0].ToString();
            rowCount++;
        }

        // Saving the workbook to a CSV file at specified file path with ";" as delimiter
        wb.SaveAsCsv(filePath, ";");
    }
}

No código acima, estamos exportando o DataTable para um arquivo Excel. Primeiro, estamos criando um DataTable, e então criamos os cabeçalhos das colunas. Após criar as colunas, adicionamos as linhas uma a uma. Uma vez que as linhas são adicionadas, criamos o objeto WorkBook. Usando o objeto, podemos adicionar os dados à planilha Excel, e então podemos salvar os dados na localização. Estamos criando o objeto WorkSheet que permite criar uma planilha, e então podemos adicionar isso ao objeto WorkBook.

Estamos usando um loop foreach para ler os valores do DataTable um por um e então adicionamos o valor à planilha. Depois que todos os valores são adicionados à planilha, salvamos em um arquivo CSV usando o método chamado SaveAsCsv - precisamos passar o delimitador e o nome do arquivo com a localização como um parâmetro. Um delimitador é um parâmetro opcional que podemos ignorar se não for necessário.

Como Exportar Grandes Dados de uma Tabela para Excel em C#, Figura 9: O código completo no Visual Studio O código completo no Visual Studio

Acima está a captura completa de tela do código que estamos usando no .NET Core 6.

Resultado:

Como Exportar Grandes Dados de uma Tabela para Excel em C#, Figura 10: O resultado ao abrir o arquivo no Microsoft Excel O resultado ao abrir o arquivo no Microsoft Excel

Acima está o resultado do exemplo de código executado. Na captura de tela, todos os dados disponíveis no DataTable foram adicionados à nova planilha do Excel criada um por um.

4 Conclusão

IronXL é uma das bibliotecas de Excel mais comumente usadas. Não depende de nenhuma outra biblioteca de terceiros. É independente e não precisa do MS Excel instalado. Funciona em várias plataformas. O preço inicial do IronXL começa em $999. Além disso, oferece a opção de uma taxa anual para suporte ao produto e atualizações. IronXL oferece cobertura de redistribuição livre de royalties a um custo extra. Para saber mais sobre os detalhes de preços, visite nossa página de licenciamento.

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

Leia mais

Artigos relacionados