Ir para o conteúdo do rodapé
USANDO O IRONXL

Gerar arquivos Excel em C#

As aplicações que desenvolvemos estão constantemente se comunicando com planilhas Excel para obter dados para avaliação e resultados. É realmente útil poder gerar arquivos Excel em C# programaticamente, economizando tempo e esforço no nosso desenvolvimento. Neste tutorial, aprenderemos sobre a geração de arquivos Excel em diferentes formatos, configuração de estilos de células, e a inserção de dados usando programação eficiente em C#.

## Gerador de Arquivos Excel C#
  • Gere arquivos do Excel com o IronXL
  • Gerar arquivos Excel C# em .XLSX & .XLS
  • Gerar arquivos CSV
  • Gerar arquivos JSON, XML, TSV e mais em projetos C#
How To Work related to Gerar arquivos Excel em C#

Passo 1

1. Gerar Arquivos Excel com IronXL

Gerar Arquivos Excel usando a Biblioteca IronXL Excel para C#, fornecendo uma gama de funções para geração e manipulação de dados em seu projeto. A biblioteca é gratuita para desenvolvimento, com licenças disponíveis quando estiver pronto para publicar. Para seguir este tutorial, você pode baixar IronXL para geração ou acessá-lo através do Visual Studio e galeria NuGet.


dotnet add package IronXl.Excel

Tutorial de Como Fazer

2. Visão Geral do Gerador de Arquivos Excel C

No desenvolvimento de aplicações de negócios, muitas vezes precisamos gerar diferentes tipos de arquivos Excel programaticamente. Para esse propósito, precisamos da maneira mais fácil e rápida de gerar diferentes tipos de arquivos e salvá-los automaticamente no local requerido.

Após instalar IronXL, podemos usar as funções para gerar diferentes tipos de arquivos Excel:

  • Arquivo Excel com .xlsx extensão.
  • Arquivo Excel com .xls extensão.
  • Arquivos de Valores Separados por Vírgula (.csv).
  • Arquivos de Valores Separados por Tabulação (.tsv).
  • Arquivos de Notação de Objetos JavaScript (.json).
  • Arquivos de Linguagem de Marcação Extensível (.xml).

Para gerar qualquer tipo de arquivo, primeiro precisamos criar um Excel WorkBook.

// Generate a new WorkBook
WorkBook wb = WorkBook.Create();
// Generate a new WorkBook
WorkBook wb = WorkBook.Create();
$vbLabelText   $csharpLabel

A linha de código acima criará um novo WorkBook nomeado wb. Agora vamos criar um objeto WorkSheet.

// Generate a new WorkSheet
WorkSheet ws = wb.CreateWorkSheet("SheetName");
// Generate a new WorkSheet
WorkSheet ws = wb.CreateWorkSheet("SheetName");
$vbLabelText   $csharpLabel

Isso criará um WorkSheet nomeado ws que podemos usar para inserir dados em arquivos Excel.


3. Generate XLSX File C#

Primeiro, seguimos os passos acima para gerar o WorkBook e WorkSheet.

Em seguida, inserimos dados nele para criar nosso arquivo de extensão .xlsx. Para esse fim, IronXL fornece um Sistema de Endereçamento de Células que nos permite inserir dados em um endereço de célula específico programaticamente.

// Insert data by cell addressing
ws["CellAddress"].Value = "MyValue";
// Insert data by cell addressing
ws["CellAddress"].Value = "MyValue";
$vbLabelText   $csharpLabel

Isso irá inserir um novo valor "MyValue" em um endereço de célula específico. Da mesma forma, podemos inserir dados em tantas células quanto precisarmos. Depois disso, salvaremos o arquivo Excel no caminho especificado da seguinte forma:

// Specify file path and name
wb.SaveAs("Path + FileName.xlsx");
// Specify file path and name
wb.SaveAs("Path + FileName.xlsx");
$vbLabelText   $csharpLabel

Isso criará um novo arquivo Excel com a extensão .xlsx no caminho especificado. Não se esqueça de escrever a extensão .xlsx com o nome do arquivo ao salvar.

Para avançar ainda mais sobre como criar um Excel WorkBook em um projeto C#, confira os exemplos de código aqui.

/**
 * Generate XLSX File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xlsx Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);

        // Create workSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";
        ws["C4"].Value = "IronXL";

        // Save the file as .xlsx
        wb.SaveAs("sample.xlsx");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate XLSX File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xlsx Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);

        // Create workSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";
        ws["C4"].Value = "IronXL";

        // Save the file as .xlsx
        wb.SaveAs("sample.xlsx");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

Você pode ver uma captura de tela do arquivo Excel recém-criado sample.xlsx aqui:

Gerar Arquivos Excel em C#, Figura 1: O resultado do valor modificado na célula C4 O resultado do valor modificado na célula C4


4. Generate XLS File C#

Também é possível gerar arquivos .xls usando IronXL. Para esse fim, usaremos a função WorkBook.Create() da seguinte maneira:

// Create a workbook with XLS format
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
// Create a workbook with XLS format
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
$vbLabelText   $csharpLabel

Isso criará um novo arquivo Excel com uma extensão .xls. Lembre-se de que ao atribuir um nome a um arquivo Excel, você deve escrever a extensão .xls com o nome do arquivo, assim:

// Save the file as .xls
wb.SaveAs("Path + FileName.xls");
// Save the file as .xls
wb.SaveAs("Path + FileName.xls");
$vbLabelText   $csharpLabel

Agora, vamos ver o exemplo de como gerar um arquivo Excel com uma extensão .xls:

/**
 * Generate XLS File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xls Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xls
        wb.SaveAs("sample.xls");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate XLS File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xls Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xls
        wb.SaveAs("sample.xls");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

5. Generate CSV File C#

Arquivos de Valores Separados por Vírgula (.csv) também desempenham um papel muito importante na manutenção de dados em diferentes tipos de organizações. Portanto, também precisamos aprender a gerar arquivos .csv e inserir dados neles programaticamente.

Podemos usar o mesmo processo acima, mas precisamos especificar a extensão .csv com o nome do arquivo ao salvar. Vamos ver um exemplo de como criar arquivos .csv em nosso projeto C#:

/**
 * Generate CSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .csv
        wb.SaveAsCsv("sample.csv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate CSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .csv
        wb.SaveAsCsv("sample.csv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

Para poder interagir mais com arquivos CSV, você pode seguir este tutorial para ler arquivo .csv.


6. Generate TSV File C#

Às vezes, precisamos gerar arquivos de Valores Separados por Tabulação (.tsv) e inserir dados programaticamente.

Usando IronXL, também podemos gerar arquivos com extensão .tsv, inserir dados neles e, em seguida, salvá-los no local necessário.

Vamos ver o exemplo de como gerar arquivos com extensão .tsv:

/**
 * Generate TSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .tsv
        wb.SaveAsTsv("sample.tsv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate TSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .tsv
        wb.SaveAsTsv("sample.tsv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

7. Generate JSON File C#

Podemos afirmar confortavelmente que arquivos de Notação de Objetos JavaScript (.json) são os arquivos de dados mais comuns e são usados em quase todas as empresas de desenvolvimento de software. Portanto, frequentemente precisamos salvar os dados no formato JSON. Para isso, precisamos do método mais simples para gerar arquivos no formato JSON e inserir os dados neles.

Nessas condições, o IronXL é a melhor opção com a qual podemos facilmente gerar esses arquivos para C#. Vamos ver o exemplo.

/**
 * Generate JSON File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "1";
        ws["A2"].Value = "john";
        ws["B1"].Value = "2";
        ws["B2"].Value = "alex";
        ws["C1"].Value = "3";
        ws["C2"].Value = "stokes";

        // Save the file as .json
        wb.SaveAsJson("sample.json");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate JSON File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "1";
        ws["A2"].Value = "john";
        ws["B1"].Value = "2";
        ws["B2"].Value = "alex";
        ws["C1"].Value = "3";
        ws["C2"].Value = "stokes";

        // Save the file as .json
        wb.SaveAsJson("sample.json");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

E revisar a captura de tela do arquivo JSON recém-criado sample.json :

Gerar Arquivos Excel em C#, Figura 2: Navegando para o Gerenciador de Pacotes NuGet no Visual Studio Navegando para o Gerenciador de Pacotes NuGet no Visual Studio


8. Generate XML File C#

No desenvolvimento de aplicações empresariais, muitas vezes precisamos salvar dados no formato de arquivo de Linguagem de Marcação Extensível (.xml). Isso é importante porque os dados do arquivo .xml são legíveis por humanos e máquinas.

Com os exemplos a seguir, aprenderemos como gerar arquivos .xml para C# e inserir dados programaticamente.

/**
 * Generate XML File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xml
        wb.SaveAsXml("sample.xml");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate XML File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xml
        wb.SaveAsXml("sample.xml");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

Você pode ler mais sobre convertendo planilhas Excel e arquivos programaticamente para uso em projetos C#.

A biblioteca IronXL também oferece uma ampla gama de recursos para interagir com arquivos Excel, como formatação de dados de células, união de células, inserção de funções matemáticas, e até mesmo gestão de gráficos.


Tutorial de Acesso Rápido

### Documentação do Gerador IronXL

Leia a documentação completa sobre como o IronXL gera arquivos em todos os formatos Excel necessários para seu projeto C#.

Documentação do Gerador IronXL
Documentation related to Tutorial de Acesso Rápido

Perguntas frequentes

Como posso gerar um arquivo Excel em C#?

Você pode gerar um arquivo Excel em C# usando o IronXL. Comece criando uma WorkBook e uma WorkSheet, insira seus dados usando o Sistema de Endereçamento de Células e salve o arquivo no formato desejado usando os métodos do IronXL.

Quais são os passos para manipular arquivos do Excel programaticamente em C#?

Para manipular arquivos do Excel programaticamente em C#, instale o IronXL através do gerenciador de pacotes NuGet, crie uma WorkBook e uma WorkSheet, use código C# para inserir e manipular dados e salve as alterações no formato de arquivo desejado.

Como posso salvar um arquivo do Excel como JSON usando C#?

Com o IronXL, você pode salvar um arquivo do Excel como JSON criando uma Pasta de Trabalho e uma Planilha, adicionando os dados necessários e utilizando o método SaveAsJson para exportar o arquivo no formato JSON.

Posso converter um arquivo Excel para CSV usando C#?

Sim, o IronXL permite converter um arquivo Excel para CSV em C#. Você precisa carregar o arquivo Excel em uma WorkBook, processá-lo conforme necessário e usar o método SaveAsCsv para exportá-lo.

Em que formatos posso exportar dados do Excel usando C#?

Com o IronXL, você pode exportar dados do Excel para diversos formatos, como XLSX, CSV, TSV, JSON e XML. Essa versatilidade é benéfica para diferentes necessidades de manipulação de dados em projetos C#.

Como instalo o IronXL para operações com o Excel em C#?

Para instalar o IronXL para operações com o Excel em C#, use o gerenciador de pacotes NuGet no Visual Studio com o comando dotnet add package IronXl.Excel .

O IronXL é adequado para aplicações empresariais que envolvem arquivos do Excel?

O IronXL é altamente adequado para aplicações empresariais, pois simplifica o processo de geração e manipulação programática de arquivos Excel, tornando-o eficiente para automatizar tarefas de processamento de dados.

Posso usar o IronXL gratuitamente durante o desenvolvimento?

O IronXL é gratuito para uso em desenvolvimento. No entanto, é necessária uma licença para implantar ou usar a biblioteca em um ambiente de produção.

Como posso formatar células ao gerar arquivos Excel em C#?

Ao usar o IronXL, você pode estilizar células em arquivos Excel gerados, definindo propriedades como tamanho da fonte, cor e estilos por meio dos métodos fornecidos na biblioteca.

É possível gerar arquivos XML a partir de dados do Excel em C#?

Sim, você pode gerar arquivos XML a partir de dados do Excel usando o IronXL. Após preparar seus dados em uma Pasta de Trabalho e Planilha, use o método SaveAsXml para exportar os dados em formato XML.

Jordi Bardia
Engenheiro de Software
Jordi é extremamente proficiente em Python, C# e C++, e quando não está utilizando suas habilidades na Iron Software, dedica-se à programação de jogos. Compartilhando as responsabilidades por testes, desenvolvimento e pesquisa de produtos, Jordi agrega imenso valor à melhoria contínua dos produtos. Essa experiência diversificada o mantém ...
Leia mais

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me