# Leitura de Arquivo XLSX em C#
Para ler arquivos XLSX em C#, use o método `WorkBook.Load` do IronXL para abrir arquivos Excel e acessar planilhas para ler dados de células, realizar cálculos e converter para formatos `DataTable` ou `DataSet` programaticamente.
*as-heading:2(Início Rápido: Carregue um workbook e acesse uma planilha sem esforço)*
Com o IronXL, você pode carregar um arquivo XLSX usando o método `WorkBook.Load` em uma única linha. Em seguida, acesse sua primeira ou nomeada planilha instantaneamente e comece a ler os valores das células.
```cs
:title=Start Reading XLSX in One Line — IronXL
IronXL.WorkBook workbook = IronXL.WorkBook.Load("your-file.xlsx");
```
<div class="learnn-how-section">
<div class="row">
<div class="col-sm-6">
<h2>Ler arquivos .XLSX em C#</h2>
<ul class="list-unstyled">
<li>Obtenha o IronXL para o seu projeto</li>
<li>Carregar um <code>WorkBook</code></li>
<li>Acessar dados de um <code>WorkSheet</code></li>
<li>Aplicar funções como Soma, Mínimo e Máximo</li>
<li>Ler um <code>WorkSheet</code> como um DataTable, DataSet e mais</li>
</ul>
</div>
<div class="col-sm-6">
<div class="download-card">
<img style="box-shadow: none; width: 308px; height: 320px;" src="/img/faq/excel/how-to-work.svg" class="img-responsive learn-how-to-img replaceable-img" />
</div>
</div>
</div>
</div>
<hr class="separator" />
## Como obtenho o IronXL para o meu projeto?
Use o IronXL no seu projeto para uma maneira simples de trabalhar com formatos de arquivo Excel em C#. Você pode [instalar o IronXL via download direto](/csharp/excel/packages/IronXL.zip) ou alternativamente usar [NuGet Install para Visual Studio](https://www.nuget.org/packages/IronXL.Excel). O software é gratuito para desenvolvimento.
```shell
:ProductInstall
```
Antes de começar a ler arquivos XLSX, explore a [documentação abrangente do IronXL](https://ironsoftware.com/csharp/excel/docs/) para entender todos os recursos disponíveis. O IronXL suporta tanto os formatos .xls quanto .xlsx, tornando-o versátil para arquivos Excel legados e modernos.
<hr class="separator" />
#### Tutorial de Como Fazer
## Como carrego um WorkBook?
O `WorkBook` é a classe do IronXL cujo objeto fornece acesso completo ao arquivo Excel e a todas as suas funções. Por exemplo, para acessar um arquivo Excel, use o código:
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-load-workbook.cs
```
### Por que usar o método `WorkBook.Load()`?
No código acima, a função `Load()` carrega `WorkBook` em `WorkBook`. Qualquer tipo de função pode ser realizada em `WorkBook` acessando o `WorkSheet` específico de um arquivo Excel. O método `Load()` detecta automaticamente o formato do arquivo, seja ele XLS, XLSX, XLSM, XLTX ou CSV. Para cenários de carregamento mais avançados, confira o guia detalhado sobre [carregamento de planilhas](https://ironsoftware.com/csharp/excel/how-to/load-spreadsheet/).
<hr class="separator" />
## Como acesso uma planilha específica?
Para acessar um `WorkSheet` específico de um arquivo Excel, o IronXL fornece a classe `WorkBook`. Ele pode ser usado de várias maneiras diferentes:
### Quais são as diferentes maneiras de acessar uma planilha?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-get-worksheet.cs
```
O `WorkBook["SheetName"]` é o `WorkSheet` que é declarado na parte acima.
OU
`WorkBook`
OU
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-worksheet-index.cs
```
OU
`WorkBook.Load()`
OU
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-default-worksheet.cs
```
OU
`sample.xlsx`
OU
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-first-worksheet.cs
```
OU
`workBook`
OU
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-first-or-default-worksheet.cs
```
OU
`workBook`
OU
`WorkBook.Load`
OU
`WorkSheet`
OU
`WorkSheet`
OU
`workBook`
OU
`WorkBook`
### Quando devo usar cada método de acesso à planilha?
Cada método tem seu caso de uso ideal:
- **`GetWorkSheet("name")`**: Quando você sabe o nome exato da planilha
- **`WorkSheets[index]`**: Para iterar através das planilhas programaticamente
- **`DefaultWorkSheet`**: Acesso rápido ao trabalhar com arquivos de uma única planilha
- **`First()` ou `FirstOrDefault()`**: Opções seguras quando os nomes das planilhas podem mudar
Depois de obter `ExcelSheet` `workSheet`, você pode obter qualquer tipo de dado e realizar todas as funções do Excel sobre ele. Para operações mais complexas em planilhas, consulte o guia sobre [abrir planilhas do Excel em C#](https://ironsoftware.com/csharp/excel/how-to/c-sharp-open-excel-worksheet/).
<hr class="separator" />
## Como acesso dados de uma Planilha?
Os dados podem ser acessados de `ExcelSheet` `workSheet` com este processo:
### Quais tipos de dados posso ler das células?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-get-data.cs
```
O IronXL fornece vários acessadores de valores para diferentes tipos de dados:
- **`StringValue`**: Para dados de texto
- **`Int32Value`**: For integers
- **`DoubleValue`**: For decimals
- **`DateTimeValue`**: For dates
- **`BoolValue`**: Para valores verdadeiro/falso
### Como leio várias células de uma vez?
Você também pode obter dados de várias células de uma coluna específica:
```csharp
foreach (var cell in workSheet["A2:A10"])
{
Console.WriteLine("Value is: {0}", cell.Text);
}
```
Este exibe os valores da célula `A2` para `A10`. Para técnicas de seleção de faixa mais avançadas, visite o [tutorial de seleção de faixas](https://ironsoftware.com/csharp/excel/how-to/select-range/).
### Como é uma implementação completa?
Um exemplo completo do código específico acima é fornecido aqui:
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-log-data.cs
```
Ele exibe o seguinte resultado:
<center>
<div class="center-image-wrapper">
<a rel="nofollow" href="/img/faq/excel/c-sharp-read-xlsx-file/doc3-input1.png" target="_blank"><img src="/img/faq/excel/c-sharp-read-xlsx-file/doc3-input1.png" alt="Saída do console mostrando dados extraídos da planilha com valores de Governo, Privado, Midmarket e Parceiros de Canal" class="img-responsive add-shadow" /></a>
</div>
</center>
Com o arquivo Excel `Sample.xlsx`:
<center>
<div class="center-image-wrapper">
<a rel="nofollow" href="/img/faq/excel/c-sharp-read-xlsx-file/doc3-1.png" target="_blank"><img src="/img/faq/excel/c-sharp-read-xlsx-file/doc3-1.png" alt="Planilha do Excel com dados comerciais mostrando colunas de Segmento, País, Produto e Faixa de Desconto em 16 linhas" class="img-responsive add-shadow" /></a>
</div>
</center>
Essas metodologias mostram como é fácil usar dados de arquivos do Excel em seu projeto. Para exemplos práticos de leitura de arquivos do Excel sem Interop, explore os [exemplos de leitura do Excel](https://ironsoftware.com/csharp/excel/examples/read-excel/).
<hr class="separator" />
## Como posso executar funções em dados?
Acesse dados filtrados de um `WorkSheet` Excel aplicando funções agregadas como `Sum`, `Min`, ou `Max` usando o código a seguir:
### Quais funções agregadas estão disponíveis?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-aggregate-function.cs
```
O IronXL suporta inúmeras funções matemáticas, incluindo:
- **`Average()`**: Calcule o valor médio
- **`Count()`**: Conte células não vazias
- **`CountIf()`**: Conte células que atendem aos critérios
- **`Median()`**: Encontre o valor do meio
- **`StdDev()`**: Calcule o desvio padrão
### Como implemento várias funções juntas?
Para mais detalhes, confira nosso tutorial detalhado sobre Como [Escrever Arquivos Excel em C#](https://ironsoftware.com/csharp/excel/tutorials/csharp-open-write-excel-file/#advanced-operations-sum-avg-count-etc) com especificidades sobre funções agregadas. Você também pode explorar a lista completa de [funções matemáticas disponíveis no IronXL](https://ironsoftware.com/csharp/excel/how-to/math-functions/).
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-min-max.cs
```
Este código exibe a seguinte saída:
<center>
<div class="center-image-wrapper">
<a rel="nofollow" href="/img/faq/excel/c-sharp-read-xlsx-file/doc3-output2.png" target="_blank"><img src="/img/faq/excel/c-sharp-read-xlsx-file/doc3-output2.png" alt="Terminal mostrando resultados de análise de dados: Soma=482, Min=12, Max=350 em fundo preto" class="img-responsive add-shadow" /></a>
</div>
</center>
E é assim que o arquivo Excel `Sample.xlsx` parece:
<center>
<div class="center-image-wrapper">
<a rel="nofollow" href="/img/faq/excel/c-sharp-read-xlsx-file/doc3-2.png" target="_blank"><img src="/img/faq/excel/c-sharp-read-xlsx-file/doc3-2.png" alt="Planilha do Excel com dados de vendas mostrando segmentos, países, produtos, unidades vendidas e preços em várias linhas" class="img-responsive add-shadow" /></a>
</div>
</center>
<hr class="separator" />
## Como leio a Planilha do Excel como DataTable?
Usando o IronXL, é fácil trabalhar com um `WorkSheet` Excel como um `DataTable`. Esse recurso é particularmente útil quando você precisa integrar dados do Excel com pipelines de processamento de dados existentes ou vincular dados a controles de interface do usuário.
### Qual é o método básico de conversão?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-datatable.cs
```
### Como uso a primeira linha como cabeçalhos de coluna?
Para usar a primeira linha de `ExcelSheet` como `DataTable` `ColumnName`:
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-datatable-header.cs
```
O parâmetro Boolean de `ToDataTable()` define a primeira linha como os nomes das colunas do seu `DataTable`. Por padrão, seu valor é `False`. Isso é especialmente útil ao trabalhar com dados estruturados que incluem cabeçalhos.
### Como faço para iterar através do DataTable?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-print-datatable.cs
```
Usando o código acima, cada valor de célula do `WorkSheet` pode ser acessado e utilizado conforme necessário. Para operações `DataTable` mais avançadas, veja o guia sobre [importar e exportar como DataSet](https://ironsoftware.com/csharp/excel/how-to/export-dataset-datatable/).
<hr class="separator" />
## Como Ler um Arquivo Excel como DataSet?
O IronXL fornece uma função simples para usar um arquivo Excel completo (`WorkBook`) como um `DataSet`. Use o método `ToDataSet` para transformar o workbook inteiro em `DataSet`.
Neste exemplo, veremos como usar o arquivo Excel como um `DataSet`.
### Como converto um livro de trabalho em DataSet?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-excel-to-dataset.cs
```
A saída do código acima se parece com isto:
<center>
<div class="center-image-wrapper">
<a rel="nofollow" href="/img/faq/excel/c-sharp-read-xlsx-file/doc10-output2.png" target="_blank"><img src="/img/faq/excel/c-sharp-read-xlsx-file/doc10-output2.png" alt="Captura de tela corrompida ou incompleta mostrando apenas os rótulos Sheet1, Sheet2, Sheet3" class="img-responsive add-shadow" /></a>
</div>
</center>
E o arquivo Excel `Sample.xlsx` parece assim:
(center content omitted for brevity)
### Como acesso cada valor de célula em todas as planilhas?
No exemplo acima, podemos facilmente analisar um arquivo Excel em um `DataSet` e trabalhar com cada `DataTable` de um arquivo Excel como um `DataTable`. Mergulhe mais fundo em como [analisar o Excel como um DataSet](https://ironsoftware.com/csharp/excel/#excel-sql-dataset) aqui, com exemplos de código.
Vamos ver mais um exemplo de como acessar cada valor de célula de todos os `ExcelSheets`. Aqui, podemos acessar cada valor de célula de cada `ExcelSheet` de um arquivo Excel.
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-all-excel-sheets.cs
```
Usando o exemplo acima, é conveniente acessar cada valor de célula de cada `ExcelSheet` de um arquivo Excel. Essa abordagem é particularmente útil quando se lida com workbooks de várias planilhas onde os dados estão distribuídos por diferentes abas.
Para mais sobre como [Ler Arquivos Excel Sem Interop](https://ironsoftware.com/csharp/excel/tutorials/how-to-read-excel-file-csharp/), confira o código aqui. A documentação de referência da API fornece detalhes abrangentes sobre todos os métodos e propriedades disponíveis na [Referência da API do IronXL](https://ironsoftware.com/csharp/excel/object-reference/api/).
<hr class="separator" />
#### Tutorial de Acesso Rápido
<div class="tutorial-section">
<div class="row">
<div class="col-sm-8">
<h3>Referência da API para IronXL</h3>
<p>Leia mais sobre os recursos, classes, campos de método, namespaces e enums do IronXL na documentação.</p>
<a class="doc-link" href="/csharp/excel/object-reference/api/" target="_blank"> Referência da API para IronXL <i class="fa fa-chevron-right"></i></a>
</div>
<div class="col-sm-4">
<div class="tutorial-image">
<img style="max-width: 110px; width: 100px; height: 140px;" alt="" class="img-responsive add-shadow" src="/img/svgs/documentation.svg" width="100" height="140" />
</div>
</div>
</div>
</div>
`WorkSheet`
`WorkSheet`
`WorkSheet`
Para ler arquivos XLSX em C#, use o método WorkBook.Load do IronXL para abrir arquivos Excel e acessar planilhas para ler dados de células, realizar cálculos e converter para formatos DataTable ou DataSet programaticamente.
Início Rápido: Carregue um workbook e acesse uma planilha sem esforço
Com o IronXL, você pode carregar um arquivo XLSX usando o método WorkBook.Load em uma única linha. Em seguida, acesse sua primeira ou nomeada planilha instantaneamente e comece a ler os valores das células.
Antes de começar a ler arquivos XLSX, explore a documentação abrangente do IronXL para entender todos os recursos disponíveis. O IronXL suporta tanto os formatos .xls quanto .xlsx, tornando-o versátil para arquivos Excel legados e modernos.
Tutorial de Como Fazer
Como carrego um WorkBook?
O WorkBook é a classe do IronXL cujo objeto fornece acesso completo ao arquivo Excel e a todas as suas funções. Por exemplo, para acessar um arquivo Excel, use o código:
using IronXL;// Load the workbookWorkBook workBook = WorkBook.Load("sample.xlsx"); // Excel file path
using IronXL;
// Load the workbook
WorkBook workBook = WorkBook.Load("sample.xlsx"); // Excel file path
Imports IronXL
' Load the workbook
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx") ' Excel file path
Por que usar o método WorkBook.Load()?
No código acima, a função Load() carrega WorkBook em WorkBook. Qualquer tipo de função pode ser realizada em WorkBook acessando o WorkSheet específico de um arquivo Excel. O método Load() detecta automaticamente o formato do arquivo, seja ele XLS, XLSX, XLSM, XLTX ou CSV. Para cenários de carregamento mais avançados, confira o guia detalhado sobre carregamento de planilhas.
Como acesso uma planilha específica?
Para acessar um WorkSheet específico de um arquivo Excel, o IronXL fornece a classe WorkBook. Ele pode ser usado de várias maneiras diferentes:
Quais são as diferentes maneiras de acessar uma planilha?
using IronXL;// Access sheet by nameWorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
using IronXL;
// Access sheet by name
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
ImportsIronXL' Access sheet by nameDim workSheet AsWorkSheet = workBook.GetWorkSheet("Sheet1")
Imports IronXL
' Access sheet by name
Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
O WorkBook["SheetName"] é o WorkSheet que é declarado na parte acima.
OU
WorkBook
OU
using IronXL;// Access sheet by indexWorkSheet workSheet = workBook.WorkSheets[0];
using IronXL;
// Access sheet by index
WorkSheet workSheet = workBook.WorkSheets[0];
ImportsIronXL' Access sheet by indexDim workSheet AsWorkSheet = workBook.WorkSheets(0)
Imports IronXL
' Access sheet by index
Dim workSheet As WorkSheet = workBook.WorkSheets(0)
OU
WorkBook.Load()
OU
using IronXL;// Access the default worksheetWorkSheet workSheet = workBook.DefaultWorkSheet;
using IronXL;
// Access the default worksheet
WorkSheet workSheet = workBook.DefaultWorkSheet;
ImportsIronXL' Access the default worksheetDim workSheet AsWorkSheet = workBook.DefaultWorkSheet
Imports IronXL
' Access the default worksheet
Dim workSheet As WorkSheet = workBook.DefaultWorkSheet
OU
sample.xlsx
OU
using IronXL;using System.Linq;// Access the first worksheetWorkSheet workSheet = workBook.WorkSheets.First();
using IronXL;
using System.Linq;
// Access the first worksheet
WorkSheet workSheet = workBook.WorkSheets.First();
ImportsIronXLImportsSystem.Linq' Access the first worksheetDim workSheet AsWorkSheet = workBook.WorkSheets.First()
Imports IronXL
Imports System.Linq
' Access the first worksheet
Dim workSheet As WorkSheet = workBook.WorkSheets.First()
OU
workBook
OU
using IronXL;using System.Linq;// Access the first or default worksheetWorkSheet workSheet = workBook.WorkSheets.FirstOrDefault();
using IronXL;
using System.Linq;
// Access the first or default worksheet
WorkSheet workSheet = workBook.WorkSheets.FirstOrDefault();
ImportsIronXLImportsSystem.Linq' Access the first or default worksheetDim workSheet AsWorkSheet = workBook.WorkSheets.FirstOrDefault()
Imports IronXL
Imports System.Linq
' Access the first or default worksheet
Dim workSheet As WorkSheet = workBook.WorkSheets.FirstOrDefault()
OU
workBook
OU
WorkBook.Load
OU
WorkSheet
OU
WorkSheet
OU
workBook
OU
WorkBook
Quando devo usar cada método de acesso à planilha?
Cada método tem seu caso de uso ideal:
GetWorkSheet("name"): Quando você sabe o nome exato da planilha
WorkSheets[index]: Para iterar através das planilhas programaticamente
DefaultWorkSheet: Acesso rápido ao trabalhar com arquivos de uma única planilha
First() ou FirstOrDefault(): Opções seguras quando os nomes das planilhas podem mudar
Depois de obter ExcelSheetworkSheet, você pode obter qualquer tipo de dado e realizar todas as funções do Excel sobre ele. Para operações mais complexas em planilhas, consulte o guia sobre abrir planilhas do Excel em C#.
Como acesso dados de uma Planilha?
Os dados podem ser acessados de ExcelSheetworkSheet com este processo:
Quais tipos de dados posso ler das células?
using IronXL;// Accessing data as a stringstring dataString = workSheet["A1"].ToString();// Accessing data as an integerint dataInt = workSheet["B1"].Int32Value;
using IronXL;
// Accessing data as a string
string dataString = workSheet["A1"].ToString();
// Accessing data as an integer
int dataInt = workSheet["B1"].Int32Value;
ImportsIronXL' Accessing data as a stringDim dataString AsString = workSheet("A1").ToString()' Accessing data as an integerDim dataInt AsInteger = workSheet("B1").Int32Value
Imports IronXL
' Accessing data as a string
Dim dataString As String = workSheet("A1").ToString()
' Accessing data as an integer
Dim dataInt As Integer = workSheet("B1").Int32Value
O IronXL fornece vários acessadores de valores para diferentes tipos de dados:
StringValue: Para dados de texto
Int32Value: For integers
DoubleValue: For decimals
DateTimeValue: For dates
BoolValue: Para valores verdadeiro/falso
Como leio várias células de uma vez?
Você também pode obter dados de várias células de uma coluna específica:
foreach (var cell in workSheet["A2:A10"]){Console.WriteLine("Value is: {0}", cell.Text);}
foreach (var cell in workSheet["A2:A10"])
{
Console.WriteLine("Value is: {0}", cell.Text);
}
For Each cell In workSheet("A2:A10")Console.WriteLine("Value is: {0}", cell.Text)Next cell
For Each cell In workSheet("A2:A10")
Console.WriteLine("Value is: {0}", cell.Text)
Next cell
Este exibe os valores da célula A2 para A10. Para técnicas de seleção de faixa mais avançadas, visite o tutorial de seleção de faixas.
Como é uma implementação completa?
Um exemplo completo do código específico acima é fornecido aqui:
using IronXL;using System;// Load an Excel fileWorkBook workBook = WorkBook.Load("sample.xlsx");WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");// Specify the rangeforeach (var cell in workSheet["B2:B10"]){Console.WriteLine("Value is: {0}", cell.Text);}
using IronXL;
using System;
// Load an Excel file
WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
// Specify the range
foreach (var cell in workSheet["B2:B10"])
{
Console.WriteLine("Value is: {0}", cell.Text);
}
ImportsIronXLImportsSystem' Load an Excel fileDim workBook AsWorkBook = WorkBook.Load("sample.xlsx")Dim workSheet AsWorkSheet = workBook.GetWorkSheet("Sheet1")' Specify the rangeFor Each cell In workSheet("B2:B10")Console.WriteLine("Value is: {0}", cell.Text)Next
Imports IronXL
Imports System
' Load an Excel file
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
' Specify the range
For Each cell In workSheet("B2:B10")
Console.WriteLine("Value is: {0}", cell.Text)
Next
Ele exibe o seguinte resultado:
Com o arquivo Excel Sample.xlsx:
Essas metodologias mostram como é fácil usar dados de arquivos do Excel em seu projeto. Para exemplos práticos de leitura de arquivos do Excel sem Interop, explore os exemplos de leitura do Excel.
Como posso executar funções em dados?
Acesse dados filtrados de um WorkSheet Excel aplicando funções agregadas como Sum, Min, ou Max usando o código a seguir:
Quais funções agregadas estão disponíveis?
using IronXL;// Apply aggregate functionsdecimal sum = workSheet["G2:G10"].Sum(); // Sum of cells from G2 to G10decimal min = workSheet["G2:G10"].Min(); // Minimum value in cells from G2 to G10decimal max = workSheet["G2:G10"].Max(); // Maximum value in cells from G2 to G10
using IronXL;
// Apply aggregate functions
decimal sum = workSheet["G2:G10"].Sum(); // Sum of cells from G2 to G10
decimal min = workSheet["G2:G10"].Min(); // Minimum value in cells from G2 to G10
decimal max = workSheet["G2:G10"].Max(); // Maximum value in cells from G2 to G10
ImportsIronXL' Apply aggregate functionsDim sum AsDecimal = workSheet("G2:G10").Sum() ' Sum of cells from G2 to G10Dim min AsDecimal = workSheet("G2:G10").Min() ' Minimum value in cells from G2 to G10Dim max AsDecimal = workSheet("G2:G10").Max() ' Maximum value in cells from G2 to G10
Imports IronXL
' Apply aggregate functions
Dim sum As Decimal = workSheet("G2:G10").Sum() ' Sum of cells from G2 to G10
Dim min As Decimal = workSheet("G2:G10").Min() ' Minimum value in cells from G2 to G10
Dim max As Decimal = workSheet("G2:G10").Max() ' Maximum value in cells from G2 to G10
O IronXL suporta inúmeras funções matemáticas, incluindo:
Average(): Calcule o valor médio
Count(): Conte células não vazias
CountIf(): Conte células que atendem aos critérios
using IronXL;using System;// Load the Excel workbookWorkBook workBook = WorkBook.Load("sample.xlsx");// Get the specified WorkSheetWorkSheet workSheet = workBook.GetWorkSheet("Sheet1");// Calculate sum, minimum, and maximum for a range of cellsdecimal sum = workSheet["G2:G10"].Sum();decimal min = workSheet["G2:G10"].Min();decimal max = workSheet["G2:G10"].Max();// Output resultsConsole.WriteLine("Sum is: {0}", sum);Console.WriteLine("Min is: {0}", min);Console.WriteLine("Max is: {0}", max);
using IronXL;
using System;
// Load the Excel workbook
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Get the specified WorkSheet
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
// Calculate sum, minimum, and maximum for a range of cells
decimal sum = workSheet["G2:G10"].Sum();
decimal min = workSheet["G2:G10"].Min();
decimal max = workSheet["G2:G10"].Max();
// Output results
Console.WriteLine("Sum is: {0}", sum);
Console.WriteLine("Min is: {0}", min);
Console.WriteLine("Max is: {0}", max);
ImportsIronXLImportsSystem' Load the Excel workbookDim workBook AsWorkBook = WorkBook.Load("sample.xlsx")' Get the specified WorkSheetDim workSheet AsWorkSheet = workBook.GetWorkSheet("Sheet1")' Calculate sum, minimum, and maximum for a range of cellsDim sum AsDecimal = workSheet("G2:G10").Sum()Dim min AsDecimal = workSheet("G2:G10").Min()Dim max AsDecimal = workSheet("G2:G10").Max()' Output resultsConsole.WriteLine("Sum is: {0}", sum)Console.WriteLine("Min is: {0}", min)Console.WriteLine("Max is: {0}", max)
Imports IronXL
Imports System
' Load the Excel workbook
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Get the specified WorkSheet
Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
' Calculate sum, minimum, and maximum for a range of cells
Dim sum As Decimal = workSheet("G2:G10").Sum()
Dim min As Decimal = workSheet("G2:G10").Min()
Dim max As Decimal = workSheet("G2:G10").Max()
' Output results
Console.WriteLine("Sum is: {0}", sum)
Console.WriteLine("Min is: {0}", min)
Console.WriteLine("Max is: {0}", max)
Este código exibe a seguinte saída:
E é assim que o arquivo Excel Sample.xlsx parece:
Como leio a Planilha do Excel como DataTable?
Usando o IronXL, é fácil trabalhar com um WorkSheet Excel como um DataTable. Esse recurso é particularmente útil quando você precisa integrar dados do Excel com pipelines de processamento de dados existentes ou vincular dados a controles de interface do usuário.
Qual é o método básico de conversão?
using IronXL;using System.Data;// Convert worksheet to DataTableDataTable dt = workSheet.ToDataTable();
using IronXL;
using System.Data;
// Convert worksheet to DataTable
DataTable dt = workSheet.ToDataTable();
ImportsIronXLImportsSystem.Data' Convert worksheet to DataTableDim dt AsDataTable = workSheet.ToDataTable()
Imports IronXL
Imports System.Data
' Convert worksheet to DataTable
Dim dt As DataTable = workSheet.ToDataTable()
Como uso a primeira linha como cabeçalhos de coluna?
Para usar a primeira linha de ExcelSheet como DataTableColumnName:
using IronXL;using System.Data;// Convert worksheet to DataTable with the first row as column namesDataTable dt = workSheet.ToDataTable(true);
using IronXL;
using System.Data;
// Convert worksheet to DataTable with the first row as column names
DataTable dt = workSheet.ToDataTable(true);
ImportsIronXLImportsSystem.Data' Convert worksheet to DataTable with the first row as column namesDim dt AsDataTable = workSheet.ToDataTable(True)
Imports IronXL
Imports System.Data
' Convert worksheet to DataTable with the first row as column names
Dim dt As DataTable = workSheet.ToDataTable(True)
O parâmetro Boolean de ToDataTable() define a primeira linha como os nomes das colunas do seu DataTable. Por padrão, seu valor é False. Isso é especialmente útil ao trabalhar com dados estruturados que incluem cabeçalhos.
Como faço para iterar através do DataTable?
using IronXL;using System;using System.Data;// Load the Excel workbookWorkBook workBook = WorkBook.Load("sample.xlsx");// Get the specified WorkSheetWorkSheet workSheet = workBook.GetWorkSheet("Sheet1");// Convert WorkSheet to DataTableDataTable dt = workSheet.ToDataTable(true); // Use first row as column names// Iterate through rows and columns and display dataforeach (DataRow row in dt.Rows) // Access rows{ for (int i = 0; i < dt.Columns.Count; i++) // Access columns of corresponding row {Console.Write(row[i] + " "); }Console.WriteLine();}
using IronXL;
using System;
using System.Data;
// Load the Excel workbook
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Get the specified WorkSheet
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
// Convert WorkSheet to DataTable
DataTable dt = workSheet.ToDataTable(true); // Use first row as column names
// Iterate through rows and columns and display data
foreach (DataRow row in dt.Rows) // Access rows
{
for (int i = 0; i < dt.Columns.Count; i++) // Access columns of corresponding row
{
Console.Write(row[i] + " ");
}
Console.WriteLine();
}
ImportsIronXLImportsSystemImportsSystem.Data' Load the Excel workbookDim workBook AsWorkBook = WorkBook.Load("sample.xlsx")' Get the specified WorkSheetDim workSheet AsWorkSheet = workBook.GetWorkSheet("Sheet1")' Convert WorkSheet to DataTableDim dt AsDataTable = workSheet.ToDataTable(True) ' Use first row as column names' Iterate through rows and columns and display dataFor Each row AsDataRowIn dt.Rows' Access rows For i AsInteger = 0 To dt.Columns.Count - 1 ' Access columns of corresponding rowConsole.Write(row(i) & " ") NextConsole.WriteLine()Next
Imports IronXL
Imports System
Imports System.Data
' Load the Excel workbook
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Get the specified WorkSheet
Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
' Convert WorkSheet to DataTable
Dim dt As DataTable = workSheet.ToDataTable(True) ' Use first row as column names
' Iterate through rows and columns and display data
For Each row As DataRow In dt.Rows ' Access rows
For i As Integer = 0 To dt.Columns.Count - 1 ' Access columns of corresponding row
Console.Write(row(i) & " ")
Next
Console.WriteLine()
Next
Usando o código acima, cada valor de célula do WorkSheet pode ser acessado e utilizado conforme necessário. Para operações DataTable mais avançadas, veja o guia sobre importar e exportar como DataSet.
Como Ler um Arquivo Excel como DataSet?
O IronXL fornece uma função simples para usar um arquivo Excel completo (WorkBook) como um DataSet. Use o método ToDataSet para transformar o workbook inteiro em DataSet.
Neste exemplo, veremos como usar o arquivo Excel como um DataSet.
Como converto um livro de trabalho em DataSet?
using IronXL;using System;using System.Data;// Load the Excel workbookWorkBook workBook = WorkBook.Load("sample.xlsx");// Convert the WorkBook to a DataSetDataSet ds = workBook.ToDataSet();// Iterate through tables in the DataSet and display table namesforeach (DataTable dt in ds.Tables){Console.WriteLine(dt.TableName);}
using IronXL;
using System;
using System.Data;
// Load the Excel workbook
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Convert the WorkBook to a DataSet
DataSet ds = workBook.ToDataSet();
// Iterate through tables in the DataSet and display table names
foreach (DataTable dt in ds.Tables)
{
Console.WriteLine(dt.TableName);
}
ImportsIronXLImportsSystemImportsSystem.Data' Load the Excel workbookDim workBook AsWorkBook = WorkBook.Load("sample.xlsx")' Convert the WorkBook to a DataSetDim ds AsDataSet = workBook.ToDataSet()' Iterate through tables in the DataSet and display table namesFor Each dt AsDataTableIn ds.TablesConsole.WriteLine(dt.TableName)Next
Imports IronXL
Imports System
Imports System.Data
' Load the Excel workbook
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Convert the WorkBook to a DataSet
Dim ds As DataSet = workBook.ToDataSet()
' Iterate through tables in the DataSet and display table names
For Each dt As DataTable In ds.Tables
Console.WriteLine(dt.TableName)
Next
A saída do código acima se parece com isto:
E o arquivo Excel Sample.xlsx parece assim:
(center content omitted for brevity)
Como acesso cada valor de célula em todas as planilhas?
No exemplo acima, podemos facilmente analisar um arquivo Excel em um DataSet e trabalhar com cada DataTable de um arquivo Excel como um DataTable. Mergulhe mais fundo em como analisar o Excel como um DataSet aqui, com exemplos de código.
Vamos ver mais um exemplo de como acessar cada valor de célula de todos os ExcelSheets. Aqui, podemos acessar cada valor de célula de cada ExcelSheet de um arquivo Excel.
using IronXL;using System;// Load the Excel workbookWorkBook workBook = WorkBook.Load("sample.xlsx");// Iterate through every WorkSheet in the WorkBookforeach (WorkSheet workSheet in workBook.WorkSheets){Console.WriteLine($"Worksheet: {workSheet.Name}"); // Access each filled cell value on the current WorkSheet foreach (var cell in workSheet.FilledCells) {Console.WriteLine($"{cell.Address}: {cell.Text}"); }}
using IronXL;
using System;
// Load the Excel workbook
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Iterate through every WorkSheet in the WorkBook
foreach (WorkSheet workSheet in workBook.WorkSheets)
{
Console.WriteLine($"Worksheet: {workSheet.Name}");
// Access each filled cell value on the current WorkSheet
foreach (var cell in workSheet.FilledCells)
{
Console.WriteLine($"{cell.Address}: {cell.Text}");
}
}
C#
Usando o exemplo acima, é conveniente acessar cada valor de célula de cada ExcelSheet de um arquivo Excel. Essa abordagem é particularmente útil quando se lida com workbooks de várias planilhas onde os dados estão distribuídos por diferentes abas.
Para ler arquivos XLSX em C#, utilize o método WorkBook.Load do IronXL. Basta carregar o arquivo Excel com IronXL.WorkBook.Load("seu-arquivo.xlsx"), e então acessar as planilhas para ler os dados das células, realizar cálculos e converter para os formatos DataTable ou DataSet programaticamente.
Quais formatos de arquivo são suportados ao carregar arquivos do Excel?
O IronXL suporta vários formatos de arquivo do Excel, incluindo .xls, .xlsx, .xlsm, .xltx e .csv. O método WorkBook.Load detecta automaticamente o formato do arquivo, tornando-o versátil tanto para arquivos Excel antigos quanto para os modernos.
Como posso instalar a biblioteca de leitura do Excel no meu projeto C#?
Você pode instalar o IronXL por meio de download direto ou via NuGet Install para Visual Studio. O software é gratuito para fins de desenvolvimento e oferece uma maneira simples de trabalhar com formatos de arquivo Excel em C#.
Quais são as diferentes maneiras de acessar uma planilha específica?
O IronXL oferece várias maneiras de acessar planilhas: você pode usar workBook.GetWorkSheet("SheetName") para acessar pelo nome, workBook.WorkSheets[0] para acessar pelo índice ou workBook.WorkSheets.First() para obter a primeira planilha.
Posso realizar cálculos com os dados do Excel depois de carregá-los?
Sim, após carregar um arquivo XLSX com o IronXL, você pode aplicar diversas funções como Soma, Mínimo e Máximo aos dados. A biblioteca fornece acesso completo às funcionalidades do arquivo Excel por meio do objeto WorkBook.
É possível converter dados de uma planilha do Excel para outros formatos?
Sim, o IronXL permite ler uma planilha e convertê-la para vários formatos, incluindo DataTable, DataSet e outros. Isso facilita a integração de dados do Excel em seus aplicativos C#.
Can I convert an entire workbook to a DataSet with IronXL?
Yes, you can convert an entire workbook to a DataSet using the `ToDataSet` method, which allows you to work with each worksheet as a separate DataTable.
What is the recommended way to read multiple cells at once in IronXL?
You can read multiple cells by iterating over a specified range, for example, using `foreach` on `workSheet["A2:A10"]` to read each cell's value.
How do I install IronXL in my C# project?
You can install IronXL via direct download or through NuGet Package Manager in Visual Studio. The library is free for development purposes.
How can I display Excel sheet data results in the console using IronXL?
To display Excel sheet data in the console, load the workbook using `WorkBook.Load`, access the desired worksheet, and iterate through cells to output their values using `Console.WriteLine`.
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.