Como carregar um arquivo Excel em C#
Para carregar arquivos Excel em C#, use o método WorkBook.Load() da biblioteca IronXL, que aceita caminhos de arquivos, fluxos ou matrizes de bytes, acesse planilhas e leia valores de células programaticamente sem precisar da instalação do Microsoft Office.
Este artigo demonstrará como carregar arquivos Excel usando o IronXL, uma biblioteca abrangente de Excel para C#, de forma eficiente e programática. Se você está construindo aplicações ASP.NET MVC que leem arquivos Excel ou criando leitores de Excel para Windows Forms, o IronXL oferece uma solução simples, mas poderosa.
Como Carregar Arquivos Excel
- Abra o Visual Studio e crie um novo projeto do Visual Studio.
- Baixe a biblioteca de pacotes NuGet do IronXL.
- Faça uma pasta de trabalho Excel no formato de arquivo XLSX ou CSV.
- Agora carregue o arquivo Excel usando a Biblioteca IronXL.
- Processe os valores do Excel usando o intervalo de células.
O Que é IronXL e Por Que Devo Utilizá-lo?
O que é IronXL?
A biblioteca C# .NET Excel, IronXL, pode ser usada para ler dados e converter documentos Microsoft Excel em arquivos CSV. Nenhum Microsoft Office, Microsoft.Office.Interop.Excel ou instalação do Excel Interop é necessário para o IronXL. É uma biblioteca de aplicação Excel .NET completamente independente que trabalha perfeitamente com containers Docker e pode ser implantada em funções AWS Lambda ou serviços de nuvem Azure. Ele pode ler numerosos formatos de planilhas.
Planilhas Excel em um contexto .NET podem ser facilmente geradas, modificadas e visualizadas graças à API C# simples do IronXL. Aplicações Core .NET, ambientes Linux, sistemas macOS, Azure e Xamarin são todos totalmente suportados pelo IronXL. A biblioteca também se integra suavemente com aplicações Blazor para ler arquivos Excel e projetos .NET MAUI. Abaixo está uma lista de marcadores dos recursos principais do IronXL que o destacam de outras aplicações para leitura de arquivos Excel.
Quais São os Recursos Principais que Tornam o IronXL Único?
- IronXL é uma poderosa biblioteca C# para planilhas do Excel; funciona tanto com .NET Core quanto com .NET Framework, fornecendo uma excelente alternativa ao Excel Interop.
- Aplicações Web, Windows Forms, Console e praticamente qualquer outro .NET Framework são suportados pelo IronXL, incluindo a capacidade de trabalhar com arquivos Excel em VB.NET.
- Sistemas operacionais compatíveis com IronXL incluem Windows, macOS e Linux.
- Acessar arquivos Excel é rápido e simples com IronXL, seja ao carregar planilhas existentes ou criar novas.
- Um grande número de tipos de arquivos Excel, incluindo XLSX, CSV, XLS, XLST, TSV, XLSM, entre outros, pode ser lido pelo IronXL. Você pode até converter entre diferentes formatos de planilhas.
- Entre as nossas muitas possibilidades estão as funções de importação, atualização e exportação de tabelas de dados e conjuntos de dados.
- IronXL permite importar informações para arquivos Excel a partir de uma variedade de fontes, incluindo bancos de dados, tabelas de dados, arrays e coleções. Você pode carregar dados Excel de bancos de dados SQL e atualizar registros de banco de dados a partir do Excel. Os dados do Excel podem então ser exportados para CSV, HTML, PDF e outros formatos usando métodos como converter Excel para HTML ou converter DataTable para CSV.
- IronXL pode gerar cálculos para a planilha Excel, suportando funções matemáticas e fórmulas complexas do Excel.
- Texto, inteiros, datas, moedas, fórmulas e porcentagens são apenas alguns dos tipos de dados que IronXL pode manipular para colunas do Excel. Você pode definir formatos de dados das células e aplicar formatos de números do Excel programaticamente.
- O desempenho para grandes arquivos Excel é otimizado para lidar com dados de forma eficaz com capacidades de multithreading aprimoradas. A biblioteca mantém melhores práticas de segurança e lida com limites de tamanho de arquivo eficientemente.
Por Que Deveria Escolher IronXL em Vez de Outras Bibliotecas Excel?
Com esses recursos, IronXL se torna uma biblioteca flexível e forte para trabalhar com arquivos Excel, proporcionando aos desenvolvedores mais conveniência e flexibilidade ao gerenciar suas tarefas relacionadas a documentos Excel programaticamente. A biblioteca fornece documentação abrangente de referência de API e tutoriais extensivos para ajudar os desenvolvedores a começarem rapidamente. Para saber mais sobre a biblioteca IronXL, consulte esses documentos.
Como Configuro um Projeto .NET para Operações com Arquivo Excel?
A biblioteca IronXL facilita escrever dados e criar e ler arquivos Excel, como você verá nas próximas seções. Antes de começarmos, garanta que você tenha configurado corretamente sua chave de licença se estiver usando a versão completa, ou você pode começar com um teste gratuito. Para aplicativos web, pode ser necessário configurar a chave de licença em seu arquivo web.config.
Primeiro, vamos começar um novo projeto para trabalhar com arquivos Excel:
Como Crio um Novo Projeto no Visual Studio?
Escolha "Novo Projeto" no menu "Arquivo" assim que o Visual Studio for iniciado.
Os modelos de projeto ".NET Console App" aparecerão na caixa de diálogo que se segue; selecione-os e clique duas vezes em "Próximo".
Novo projeto
Quais Configurações de Projeto Devo Configurar?
Você pode digitar qualquer nome de projeto que desejar após inserir a localização do novo projeto na área Localização. Para este tutorial, considere nomeá-lo com algo descritivo como 'ExcelReaderApp' ou 'IronXLDemo'. Pressione o botão Próximo para continuar.
Configuração do projeto
Qual Versão do .NET Framework Devo Selecionar?
Com o menu suspenso Framework, você pode escolher um .NET Framework. A versão de suporte a longo prazo do .NET, 6.0, está sendo utilizada aqui. IronXL suporta várias versões do .NET, então você pode escolher com base nos requisitos do seu projeto. Basta clicar em "Criar" depois disso.
Seleção do framework de destino
Como Instalo a Biblioteca IronXL?
A seguinte solução requer a biblioteca IronXL, que você deve obter. Para realizar isso, insira o comando abaixo no Console do Gerenciador de Pacotes:
Install-Package IronXL.Excel
Instalação do IronXL
Uma alternativa para isso seria usar o Gerenciador de Pacotes NuGet para procurar o pacote "IronXL".
A navegação deve resultar em uma lista de todos os pacotes NuGet ligados ao IronXL. Em seguida, selecione o necessário e clique no botão instalar.
Gerenciador de Pacotes NuGet
Como posso ler arquivos Excel usando IronXL?
O código a seguir permite que você carregue e leia arquivos Excel usando IronXL. Este exemplo demonstra a abordagem básica para ler arquivos Excel sem Interop.
using IronXL;
using System.Linq;
// Load the workbook with the name "Demo.xlsx".
WorkBook workBook = WorkBook.Load("Demo.xlsx");
// Access the first worksheet in the workbook.
WorkSheet sheet = workBook.WorkSheets.First();
// Iterate through the range of cells A2 to B10 and print each cell's address and text content.
foreach (var cell in sheet["A2:B10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
using IronXL;
using System.Linq;
// Load the workbook with the name "Demo.xlsx".
WorkBook workBook = WorkBook.Load("Demo.xlsx");
// Access the first worksheet in the workbook.
WorkSheet sheet = workBook.WorkSheets.First();
// Iterate through the range of cells A2 to B10 and print each cell's address and text content.
foreach (var cell in sheet["A2:B10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
Imports IronXL
Imports System.Linq
' Load the workbook with the name "Demo.xlsx".
Private workBook As WorkBook = WorkBook.Load("Demo.xlsx")
' Access the first worksheet in the workbook.
Private sheet As WorkSheet = workBook.WorkSheets.First()
' Iterate through the range of cells A2 to B10 and print each cell's address and text content.
For Each cell In sheet("A2:B10")
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
O que cada parte do código faz?
A primeira linha de código, using IronXL;, é chamada para implementar a biblioteca neste projeto de demonstração, o que torna as funcionalidades do IronXL disponíveis.
Em seguida, carregue o arquivo Excel existente, chamado 'Demo.xlsx', usando o método Load que está disponível no objeto WorkBook.
O método Load aceita três tipos de entradas: um nome de arquivo com o caminho, um fluxo e matrizes de bytes. No exemplo acima, o método com o nome do arquivo e o caminho é usado para carregar o arquivo.
Como posso acessar planilhas específicas e intervalos de células?
Para realizar a operação de leitura do arquivo Excel, obtemos o WorkSheet padrão usando o método First() para selecionar a planilha inicial da coleção de planilhas do workbook. Você também pode gerenciar planilhas acessando-as por nome ou índice.
Subsequentemente, o intervalo de planilha Excel é selecionado usando o objeto da planilha especificando o intervalo de células. A função de seleção de intervalo permite que você trabalhe com células específicas, linhas inteiras ou colunas. Ele então irá iterar por cada um dos valores das células dentro do intervalo especificado (A2:B10) e exibirá o valor juntamente com o endereço da célula.
Qual saída devo esperar deste código?
Saída do Exemplo de Código Anterior
O exemplo acima demonstra o carregamento de um arquivo Excel em C# e sua saída resultante ao usar IronXL. Ele utiliza planilhas do Excel referenciando o índice de linha e coluna.
Como posso lidar com diferentes formatos de arquivo Excel?
O IronXL suporta vários formatos de arquivos Excel além do padrão XLSX. Você pode ler arquivos XLSX, trabalhar com formatos XLS mais antigos, e até mesmo ler arquivos CSV usando a mesma API. Aqui está um exemplo de carregamento de diferentes tipos de arquivos:
// Load an XLSX file
WorkBook xlsxWorkbook = WorkBook.Load("data.xlsx");
// Load a CSV file
WorkBook csvWorkbook = WorkBook.LoadCSV("data.csv", delimiter: ",");
// Load an XLS file (older Excel format)
WorkBook xlsWorkbook = WorkBook.Load("legacy.xls");
// Load from a stream instead of a file path
using (FileStream stream = new FileStream("data.xlsx", FileMode.Open))
{
WorkBook streamWorkbook = WorkBook.Load(stream);
}
// Load an XLSX file
WorkBook xlsxWorkbook = WorkBook.Load("data.xlsx");
// Load a CSV file
WorkBook csvWorkbook = WorkBook.LoadCSV("data.csv", delimiter: ",");
// Load an XLS file (older Excel format)
WorkBook xlsWorkbook = WorkBook.Load("legacy.xls");
// Load from a stream instead of a file path
using (FileStream stream = new FileStream("data.xlsx", FileMode.Open))
{
WorkBook streamWorkbook = WorkBook.Load(stream);
}
' Load an XLSX file
Dim xlsxWorkbook As WorkBook = WorkBook.Load("data.xlsx")
' Load a CSV file
Dim csvWorkbook As WorkBook = WorkBook.LoadCSV("data.csv", delimiter:=",")
' Load an XLS file (older Excel format)
Dim xlsWorkbook As WorkBook = WorkBook.Load("legacy.xls")
' Load from a stream instead of a file path
Using stream As New FileStream("data.xlsx", FileMode.Open)
Dim streamWorkbook As WorkBook = WorkBook.Load(stream)
End Using
Para saber mais sobre programação com IronXL, consulte este exemplo.
Quais são os próximos passos após carregar arquivos Excel?
O IronXL é um complemento do Excel muito apreciado que funciona sem a necessidade de bibliotecas externas adicionais. Ele possui vários usos e não precisa ter o Microsoft Excel instalado.
Todas as tarefas programáveis envolvendo documentos do Microsoft Excel podem ser totalmente resolvidas com o IronXL. Você pode adicionar e remover dados, pesquisar e substituir, combinar e descombinar tabelas de dados ou células, ordenar strings ou números, visualizar uma tabela de dados, e salvar arquivos. Cálculos de fórmulas também são possíveis com o IronXL usando a função de editar fórmulas. Você também pode definir tipos de dados de células e examinar dados de planilhas com ele. A capacidade de ler e escrever arquivos CSV disponível no IronXL é uma necessidade para trabalhar com dados Excel.
Recursos Avançados para Explorar
Uma vez que você dominou o carregamento de arquivos Excel, considere explorar esses recursos avançados:
- Manipulação de Dados: Importar dados Excel em sua aplicação, editar arquivos Excel programaticamente, e exportar para vários formatos.
- Formatação e Estilização: Aplicar fontes e tamanhos de células, definir bordas e alinhamento, adicionar padrões e cores de fundo, e implementar formatação condicional.
- Trabalhando com Estruturas Complexas: Criar e gerenciar intervalos nomeados, trabalhar com tabelas nomeadas, agrupar e desagrupar linhas/colunas, e lidar com painéis congelados.
- Integração de Dados: Converter entre Excel e bancos de dados SQL, trabalhar com DataTables, e converter Excel para JSON/XML.
- Segurança e Proteção: Criptografar livros com senhas, proteger planilhas individuais, e gerenciar metadados de livros.
- Elementos Visuais: Criar gráficos Excel, adicionar comentários às células, inserir hiperlinks, e trabalhar com imagens.
Quer tentar você mesmo?
Embora o IronXL ofereça um teste gratuito, os usuários podem optar por fazer upgrade para uma assinatura paga por 1 ano para receber atualizações e assistência ao cliente. IronXL cobra extra pela segurança que permite distribuição irrestrita. Para saber mais sobre os detalhes do preço, veja esta página de licenciamento.
Perguntas frequentes
Como posso carregar um arquivo Excel em C# sem usar Interop?
Você pode carregar um arquivo Excel em C# sem usar Interop utilizando a biblioteca IronXL. Comece instalando o pacote NuGet IronXL em seu projeto e, em seguida, use o método WorkBook.Load para carregar seu arquivo Excel programaticamente.
Quais são os passos para configurar o IronXL em um projeto do Visual Studio?
Para configurar o IronXL em um projeto do Visual Studio, crie um novo projeto, instale o pacote NuGet do IronXL através do Gerenciador de Pacotes NuGet e, em seguida, você poderá começar a criar ou carregar arquivos do Excel usando a API da biblioteca.
O IronXL pode ser usado com o .NET Core 6?
Sim, o IronXL é totalmente compatível com o .NET Core 6. Você pode integrá-lo facilmente aos seus projetos .NET Core para gerenciar arquivos do Excel.
Como o IronXL gerencia grandes conjuntos de dados do Excel?
O IronXL foi otimizado para lidar com grandes conjuntos de dados de forma eficiente. Seus recursos de multithreading permitem processar grandes quantidades de dados rapidamente, sem comprometer o desempenho.
É possível ler e converter arquivos do Excel com o IronXL?
Sim, o IronXL permite ler dados de arquivos Excel e convertê-los para diferentes formatos, como CSV. Isso pode ser feito programaticamente usando sua API em C#.
Quais formatos de arquivo o IronXL suporta para arquivos do Excel?
O IronXL suporta diversos formatos de arquivo do Excel, incluindo XLSX, CSV, XLS, XLST, TSV e XLSM, tornando-o versátil para diferentes requisitos de projeto.
O IronXL pode ser usado em diferentes sistemas operacionais?
Sim, o IronXL é multiplataforma e funciona no Windows, macOS e Linux, permitindo que os desenvolvedores usem a biblioteca em diversos ambientes.
Como posso lidar com diferentes tipos de dados no Excel usando o IronXL?
O IronXL consegue gerenciar diversos tipos de dados em colunas do Excel, como texto, números, datas e fórmulas, oferecendo uma solução flexível para manipulação de dados.
Quais são as vantagens de usar o IronXL para tarefas do Excel em C#?
O IronXL oferece diversas vantagens, incluindo facilidade de uso, compatibilidade com múltiplas plataformas, suporte a uma ampla gama de formatos do Excel e não depende de instalações do Microsoft Excel.
Como posso experimentar o IronXL para gerenciamento de arquivos do Excel?
Você pode experimentar o IronXL com um teste gratuito. Para acessar recursos adicionais, atualizações e suporte ao cliente, considere fazer um upgrade para uma assinatura paga.



