# C# XLSX-Datei lesen
Um XLSX-Dateien in C# zu lesen, verwenden Sie die Methode `WorkBook.Load` von IronXL, um Excel-Dateien zu öffnen und Arbeitsblätter zuzugreifen, um Zelldaten zu lesen, Berechnungen durchzuführen und in `DataTable` oder `DataSet` Formate programmgesteuert zu konvertieren.
*as-heading:2(Schnellstart: Ein Arbeitsbuch laden und mühelos auf ein Arbeitsblatt zugreifen)*
Mit IronXL können Sie eine XLSX-Datei mit der Methode `WorkBook.Load` in einer einzigen Zeile laden. Greifen Sie dann sofort auf das erste oder benannte Arbeitsblatt zu und beginnen Sie, Zellwerte zu lesen.
```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>Lesen von .XLSX-Dateien C#</h2>
<ul class="list-unstyled">
<li>Holen Sie sich IronXL für Ihr Projekt</li>
<li>Ein <code>WorkBook</code> laden</li>
<li>Zugriff auf Daten aus einem <code>WorkSheet</code></li>
<li>Funktionen wie Summe, Min und Max anwenden</li>
<li>Ein <code>WorkSheet</code> als DataTable, DataSet und mehr lesen</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" />
## Wie bekomme ich IronXL für mein Projekt?
Verwenden Sie IronXL in Ihrem Projekt für eine einfache Möglichkeit, mit Excel-Dateiformaten in C# zu arbeiten. Sie können IronXL entweder [direkt herunterladen und installieren](/csharp/excel/packages/IronXL.zip) oder alternativ [NuGet Install für Visual Studio](https://www.nuget.org/packages/IronXL.Excel) verwenden. Die Software ist kostenlos für die Entwicklung.
```shell
:ProductInstall
```
Bevor Sie mit dem Lesen von XLSX-Dateien beginnen, sollten Sie die [umfassende IronXL-Dokumentation](https://ironsoftware.com/csharp/excel/docs/) lesen, um alle verfügbaren Funktionen zu verstehen. IronXL unterstützt sowohl das .xls- als auch das .xlsx-Format und ist damit vielseitig einsetzbar für ältere und moderne Excel-Dateien.
<hr class="separator" />
#### Anleitung zum Tutorial
## Wie lade ich ein WorkBook?
`WorkBook` ist die Klasse von IronXL, deren Objekt vollen Zugriff auf die Excel-Datei und alle ihre Funktionen bietet. Um zum Beispiel auf eine Excel-Datei zuzugreifen, verwenden Sie den Code:
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-load-workbook.cs
```
### Warum die Methode `WorkBook.Load()` verwenden?
Im obigen Code lädt die Funktion `Load()` `WorkBook` in `WorkBook`. Jede Art von Funktion kann auf `WorkBook` durch den Zugriff auf das spezifische `WorkSheet` einer Excel-Datei ausgeführt werden. Die Methode `Load()` erkennt das Dateiformat automatisch, egal ob es sich um XLS, XLSX, XLSM, XLTX oder CSV handelt. Für fortgeschrittene Ladeszenarien schauen Sie sich den detaillierten Leitfaden über [das Laden von Kalkulationstabellen](https://ironsoftware.com/csharp/excel/how-to/load-spreadsheet/) an.
<hr class="separator" />
## Wie greife ich auf ein bestimmtes WorkSheet zu?
Um auf ein spezifisches `WorkSheet` einer Excel-Datei zuzugreifen, bietet IronXL die Klasse `WorkBook`. Sie kann auf verschiedene Weise verwendet werden:
### Welche sind die verschiedenen Möglichkeiten, auf ein Arbeitsblatt zuzugreifen?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-get-worksheet.cs
```
`WorkBook["SheetName"]` ist das `WorkSheet`, das im obigen Abschnitt deklariert ist.
ODER
`WorkBook`
ODER
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-worksheet-index.cs
```
ODER
`WorkBook.Load()`
ODER
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-default-worksheet.cs
```
ODER
`sample.xlsx`
ODER
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-first-worksheet.cs
```
ODER
`workBook`
ODER
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-first-or-default-worksheet.cs
```
ODER
`workBook`
ODER
`WorkBook.Load`
ODER
`WorkSheet`
ODER
`WorkSheet`
ODER
`workBook`
ODER
`WorkBook`
### Wann sollte ich die einzelnen Methoden für den Zugriff auf Arbeitsblätter verwenden?
Jede Methode hat ihren idealen Anwendungsfall:
- **`GetWorkSheet("name")`**: Wenn Sie den genauen Blattnamen kennen
- **`WorkSheets[index]`**: Zum programmgesteuerten Durchlaufen von Blättern
- **`DefaultWorkSheet`**: Schneller Zugriff bei der Arbeit mit Einzelblattdateien
- **`First()` oder `FirstOrDefault()`**: Sichere Optionen, wenn sich Blattnamen ändern könnten
Nachdem Sie `ExcelSheet` `workSheet` erhalten haben, können Sie jede Art von Daten daraus abrufen und alle Excel-Funktionen darauf ausführen. Komplexere Arbeitsblattoperationen finden Sie in der Anleitung zum [Öffnen von Excel-Arbeitsblättern in C#](https://ironsoftware.com/csharp/excel/how-to/c-sharp-open-excel-worksheet/).
<hr class="separator" />
## Wie greife ich auf Daten aus einem WorkSheet zu?
Daten können mit diesem Prozess aus `ExcelSheet` `workSheet` abgerufen werden:
### Welche Datentypen kann ich aus Zellen lesen?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-get-data.cs
```
IronXL bietet verschiedene Wertzugriffsmöglichkeiten für unterschiedliche Datentypen:
- **`StringValue`**: For text data
- **`Int32Value`**: Für Ganzzahlen
- **`DoubleValue`**: Für Dezimalzahlen
- **`DateTimeValue`**: For dates
- **`BoolValue`**: Für Wahr/Falsch-Werte
### Wie kann ich mehrere Zellen auf einmal lesen?
Sie können auch Daten aus mehreren Zellen einer bestimmten Spalte abrufen:
```csharp
foreach (var cell in workSheet["A2:A10"])
{
Console.WriteLine("Value is: {0}", cell.Text);
}
```
Dies zeigt die Werte von Zelle `A2` bis `A10` an. Weitere fortgeschrittene Techniken zur Bereichsauswahl finden Sie im [Tutorial zur Bereichsauswahl](https://ironsoftware.com/csharp/excel/how-to/select-range/).
### Wie sieht eine vollständige Implementierung aus?
Ein vollständiges Code-Beispiel für die oben genannten Angaben finden Sie hier:
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-log-data.cs
```
Sie zeigt das folgende Ergebnis an:
<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="Die Konsolenausgabe zeigt die extrahierten Arbeitsblattdaten mit den Werten für Behörden, Privatkunden, mittelständische Unternehmen und Vertriebspartner" class="img-responsive add-shadow" /></a>
</div>
</center>
Mit der Excel-Datei `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="Excel-Tabelle mit Geschäftsdaten mit den Spalten Segment, Land, Produkt und Rabattstaffel in 16 Zeilen" class="img-responsive add-shadow" /></a>
</div>
</center>
Diese Methoden zeigen, wie mühelos es ist, Daten aus Excel-Dateien in Ihrem Projekt zu verwenden. Praktische Beispiele für das Lesen von Excel-Dateien ohne Interop finden Sie auf der Seite [Excel-Beispiele lesen](https://ironsoftware.com/csharp/excel/examples/read-excel/).
<hr class="separator" />
## Wie kann ich Funktionen auf Daten anwenden?
Zugreifen auf gefilterte Daten aus einer Excel-`WorkSheet`, indem Sie Aggregatfunktionen wie `Sum`, `Min` oder `Max` mit dem folgenden Code anwenden:
### Welche Aggregatfunktionen sind verfügbar?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-aggregate-function.cs
```
IronXL unterstützt zahlreiche mathematische Funktionen, darunter:
- **`Average()`**: Den Mittelwert berechnen
- **`Count()`**: Nicht-leere Zellen zählen
- **`CountIf()`**: Zellen zählen, die Kriterien erfüllen
- **`Median()`**: Den Mittelwert finden
- **`StdDev()`**: Die Standardabweichung berechnen
### Wie kann ich mehrere Funktionen zusammen implementieren?
Weitere Einzelheiten finden Sie in unserem ausführlichen Tutorial zum [Schreiben von C#-Excel-Dateien](https://ironsoftware.com/csharp/excel/tutorials/csharp-open-write-excel-file/#advanced-operations-sum-avg-count-etc) mit speziellen Informationen zu Aggregatfunktionen. Sie können auch die vollständige Liste der in IronXL verfügbaren [Mathe-Funktionen](https://ironsoftware.com/csharp/excel/how-to/math-functions/) einsehen.
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-min-max.cs
```
Dieser Code zeigt die folgende Ausgabe an:
<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 mit den Ergebnissen der Datenanalyse: Summe=482, Min=12, Max=350 auf schwarzem Hintergrund" class="img-responsive add-shadow" /></a>
</div>
</center>
Und so sieht die Excel-Datei `Sample.xlsx` aus:
<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="Excel-Tabelle mit Verkaufsdaten, die Segmente, Länder, Produkte, verkaufte Einheiten und Preise in mehreren Zeilen zeigen" class="img-responsive add-shadow" /></a>
</div>
</center>
<hr class="separator" />
## Wie lese ich ein Excel-Arbeitsblatt als DataTable?
Unter Verwendung von IronXL ist es einfach, mit einer Excel `WorkSheet` als `DataTable` zu arbeiten. Diese Funktion ist besonders nützlich, wenn Sie Excel-Daten in bestehende Datenverarbeitungspipelines integrieren oder Daten an UI-Steuerelemente binden müssen.
### Was ist die grundlegende Konvertierungsmethode?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-datatable.cs
```
### Wie kann ich die erste Zeile als Spaltenüberschrift verwenden?
Um die erste Reihe von `ExcelSheet` als `DataTable` `ColumnName` zu verwenden:
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-datatable-header.cs
```
Der boolesche Parameter von `ToDataTable()` setzt die erste Zeile als die Spaltennamen Ihrer `DataTable`. Standardmäßig beträgt der Wert `False`. Dies ist besonders nützlich bei der Arbeit mit strukturierten Daten, die Kopfzeilen enthalten.
### Wie iteriere ich durch die DataTable?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-print-datatable.cs
```
Mit dem obigen Code kann jeder Zellwert der `WorkSheet` abgerufen und nach Bedarf verwendet werden. Für fortgeschrittenere `DataTable`-Operationen siehe den Leitfaden über [das Importieren und Exportieren als DataSet](https://ironsoftware.com/csharp/excel/how-to/export-dataset-datatable/).
<hr class="separator" />
## Wie lese ich eine Excel-Datei als DataSet?
IronXL bietet eine einfache Funktion, um eine komplette Excel-Datei (`WorkBook`) als `DataSet` zu verwenden. Verwenden Sie die Methode `ToDataSet`, um das gesamte Arbeitsbuch in `DataSet` zu verwandeln.
In diesem Beispiel werden wir sehen, wie man die Excel-Datei als `DataSet` verwendet.
### Wie kann ich eine Arbeitsmappe in ein DataSet konvertieren?
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-excel-to-dataset.cs
```
Die Ausgabe des obigen Codes sieht wie folgt aus:
<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="Beschädigter oder unvollständiger Screenshot, der nur die Beschriftungen Sheet1, Sheet2, Sheet3 zeigt" class="img-responsive add-shadow" /></a>
</div>
</center>
Und so sieht die Excel-Datei `Sample.xlsx` aus:
(center content omitted for brevity)
### Wie kann ich auf jeden Zellwert in allen Arbeitsblättern zugreifen?
Im obigen Beispiel können wir eine Excel-Datei leicht in eine `DataSet` parsen und mit jedem `DataTable` einer Excel-Datei als `DataTable` arbeiten. Hier erfahren Sie anhand von Code-Beispielen, wie man [Excel als DataSet parsen kann](https://ironsoftware.com/csharp/excel/#excel-sql-dataset).
Lassen Sie uns ein weiteres Beispiel sehen, wie man jeden Zellwert aller `ExcelSheets` zugreift. Hier können wir jeden Zellwert von jedem `ExcelSheet` einer Excel-Datei zugreifen.
```csharp
:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-all-excel-sheets.cs
```
Mit dem obigen Beispiel ist es bequem, jeden Zellwert von jedem `ExcelSheet` einer Excel-Datei zuzugreifen. Dieser Ansatz ist besonders nützlich, wenn man mit mehrblättrigen Arbeitsmappen arbeitet, bei denen Daten über verschiedene Registerkarten verteilt sind.
Weitere Informationen zum [Lesen von Excel-Dateien ohne Interop](https://ironsoftware.com/csharp/excel/tutorials/how-to-read-excel-file-csharp/) finden Sie im Code hier. Die API-Referenzdokumentation bietet umfassende Details über alle verfügbaren Methoden und Eigenschaften auf der [IronXL API-Referenz](https://ironsoftware.com/csharp/excel/object-reference/api/).
<hr class="separator" />
#### Tutorial Schnellzugriff
<div class="tutorial-section">
<div class="row">
<div class="col-sm-8">
<h3>API-Referenz für IronXL</h3>
<p>Lesen Sie mehr über die Funktionen, Klassen, Methodenfelder, Namespaces und Enums von IronXL in der Dokumentation.</p>
<a class="doc-link" href="/csharp/excel/object-reference/api/" target="_blank"> API-Referenz für 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`
Um XLSX-Dateien in C# zu lesen, verwenden Sie die Methode WorkBook.Load von IronXL, um Excel-Dateien zu öffnen und Arbeitsblätter zuzugreifen, um Zelldaten zu lesen, Berechnungen durchzuführen und in DataTable oder DataSet Formate programmgesteuert zu konvertieren.
Schnellstart: Ein Arbeitsbuch laden und mühelos auf ein Arbeitsblatt zugreifen
Mit IronXL können Sie eine XLSX-Datei mit der Methode WorkBook.Load in einer einzigen Zeile laden. Greifen Sie dann sofort auf das erste oder benannte Arbeitsblatt zu und beginnen Sie, Zellwerte zu lesen.
1Install IronXL with NuGet Package Manager
PM > Install-Package IronXL.Excel
Install-Package IronXL.Excel
2Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.
Beginnen Sie noch heute, IronXL in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
Lesen von .XLSX-Dateien C#
Holen Sie sich IronXL für Ihr Projekt
Ein WorkBook laden
Zugriff auf Daten aus einem WorkSheet
Funktionen wie Summe, Min und Max anwenden
Ein WorkSheet als DataTable, DataSet und mehr lesen
Wie bekomme ich IronXL für mein Projekt?
Verwenden Sie IronXL in Ihrem Projekt für eine einfache Möglichkeit, mit Excel-Dateiformaten in C# zu arbeiten. Sie können IronXL entweder direkt herunterladen und installieren oder alternativ NuGet Install für Visual Studio verwenden. Die Software ist kostenlos für die Entwicklung.
PM > Install-Package IronXL.Excel
Install-Package IronXL.Excel
Bevor Sie mit dem Lesen von XLSX-Dateien beginnen, sollten Sie die umfassende IronXL-Dokumentation lesen, um alle verfügbaren Funktionen zu verstehen. IronXL unterstützt sowohl das .xls- als auch das .xlsx-Format und ist damit vielseitig einsetzbar für ältere und moderne Excel-Dateien.
Anleitung zum Tutorial
Wie lade ich ein WorkBook?
WorkBook ist die Klasse von IronXL, deren Objekt vollen Zugriff auf die Excel-Datei und alle ihre Funktionen bietet. Um zum Beispiel auf eine Excel-Datei zuzugreifen, verwenden Sie den Code:
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
Warum die Methode WorkBook.Load() verwenden?
Im obigen Code lädt die Funktion Load()WorkBook in WorkBook. Jede Art von Funktion kann auf WorkBook durch den Zugriff auf das spezifische WorkSheet einer Excel-Datei ausgeführt werden. Die Methode Load() erkennt das Dateiformat automatisch, egal ob es sich um XLS, XLSX, XLSM, XLTX oder CSV handelt. Für fortgeschrittene Ladeszenarien schauen Sie sich den detaillierten Leitfaden über das Laden von Kalkulationstabellen an.
Wie greife ich auf ein bestimmtes WorkSheet zu?
Um auf ein spezifisches WorkSheet einer Excel-Datei zuzugreifen, bietet IronXL die Klasse WorkBook. Sie kann auf verschiedene Weise verwendet werden:
Welche sind die verschiedenen Möglichkeiten, auf ein Arbeitsblatt zuzugreifen?
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")
WorkBook["SheetName"] ist das WorkSheet, das im obigen Abschnitt deklariert ist.
ODER
WorkBook
ODER
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)
ODER
WorkBook.Load()
ODER
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
ODER
sample.xlsx
ODER
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()
ODER
workBook
ODER
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()
ODER
workBook
ODER
WorkBook.Load
ODER
WorkSheet
ODER
WorkSheet
ODER
workBook
ODER
WorkBook
Wann sollte ich die einzelnen Methoden für den Zugriff auf Arbeitsblätter verwenden?
Jede Methode hat ihren idealen Anwendungsfall:
GetWorkSheet("name"): Wenn Sie den genauen Blattnamen kennen
WorkSheets[index]: Zum programmgesteuerten Durchlaufen von Blättern
DefaultWorkSheet: Schneller Zugriff bei der Arbeit mit Einzelblattdateien
First() oder FirstOrDefault(): Sichere Optionen, wenn sich Blattnamen ändern könnten
Nachdem Sie ExcelSheetworkSheet erhalten haben, können Sie jede Art von Daten daraus abrufen und alle Excel-Funktionen darauf ausführen. Komplexere Arbeitsblattoperationen finden Sie in der Anleitung zum Öffnen von Excel-Arbeitsblättern in C#.
Wie greife ich auf Daten aus einem WorkSheet zu?
Daten können mit diesem Prozess aus ExcelSheetworkSheet abgerufen werden:
Welche Datentypen kann ich aus Zellen lesen?
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
IronXL bietet verschiedene Wertzugriffsmöglichkeiten für unterschiedliche Datentypen:
StringValue: For text data
Int32Value: Für Ganzzahlen
DoubleValue: Für Dezimalzahlen
DateTimeValue: For dates
BoolValue: Für Wahr/Falsch-Werte
Wie kann ich mehrere Zellen auf einmal lesen?
Sie können auch Daten aus mehreren Zellen einer bestimmten Spalte abrufen:
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
Dies zeigt die Werte von Zelle A2 bis A10 an. Weitere fortgeschrittene Techniken zur Bereichsauswahl finden Sie im Tutorial zur Bereichsauswahl.
Wie sieht eine vollständige Implementierung aus?
Ein vollständiges Code-Beispiel für die oben genannten Angaben finden Sie hier:
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
Sie zeigt das folgende Ergebnis an:
Mit der Excel-Datei Sample.xlsx:
Diese Methoden zeigen, wie mühelos es ist, Daten aus Excel-Dateien in Ihrem Projekt zu verwenden. Praktische Beispiele für das Lesen von Excel-Dateien ohne Interop finden Sie auf der Seite Excel-Beispiele lesen.
Wie kann ich Funktionen auf Daten anwenden?
Zugreifen auf gefilterte Daten aus einer Excel-WorkSheet, indem Sie Aggregatfunktionen wie Sum, Min oder Max mit dem folgenden Code anwenden:
Welche Aggregatfunktionen sind verfügbar?
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
IronXL unterstützt zahlreiche mathematische Funktionen, darunter:
Average(): Den Mittelwert berechnen
Count(): Nicht-leere Zellen zählen
CountIf(): Zellen zählen, die Kriterien erfüllen
Median(): Den Mittelwert finden
StdDev(): Die Standardabweichung berechnen
Wie kann ich mehrere Funktionen zusammen implementieren?
Weitere Einzelheiten finden Sie in unserem ausführlichen Tutorial zum Schreiben von C#-Excel-Dateien mit speziellen Informationen zu Aggregatfunktionen. Sie können auch die vollständige Liste der in IronXL verfügbaren Mathe-Funktionen einsehen.
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)
Dieser Code zeigt die folgende Ausgabe an:
Und so sieht die Excel-Datei Sample.xlsx aus:
Wie lese ich ein Excel-Arbeitsblatt als DataTable?
Unter Verwendung von IronXL ist es einfach, mit einer Excel WorkSheet als DataTable zu arbeiten. Diese Funktion ist besonders nützlich, wenn Sie Excel-Daten in bestehende Datenverarbeitungspipelines integrieren oder Daten an UI-Steuerelemente binden müssen.
Was ist die grundlegende Konvertierungsmethode?
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()
Wie kann ich die erste Zeile als Spaltenüberschrift verwenden?
Um die erste Reihe von ExcelSheet als DataTableColumnName zu verwenden:
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)
Der boolesche Parameter von ToDataTable() setzt die erste Zeile als die Spaltennamen Ihrer DataTable. Standardmäßig beträgt der Wert False. Dies ist besonders nützlich bei der Arbeit mit strukturierten Daten, die Kopfzeilen enthalten.
Wie iteriere ich durch die 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
Mit dem obigen Code kann jeder Zellwert der WorkSheet abgerufen und nach Bedarf verwendet werden. Für fortgeschrittenere DataTable-Operationen siehe den Leitfaden über das Importieren und Exportieren als DataSet.
Wie lese ich eine Excel-Datei als DataSet?
IronXL bietet eine einfache Funktion, um eine komplette Excel-Datei (WorkBook) als DataSet zu verwenden. Verwenden Sie die Methode ToDataSet, um das gesamte Arbeitsbuch in DataSet zu verwandeln.
In diesem Beispiel werden wir sehen, wie man die Excel-Datei als DataSet verwendet.
Wie kann ich eine Arbeitsmappe in ein DataSet konvertieren?
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
Die Ausgabe des obigen Codes sieht wie folgt aus:
Und so sieht die Excel-Datei Sample.xlsx aus:
(center content omitted for brevity)
Wie kann ich auf jeden Zellwert in allen Arbeitsblättern zugreifen?
Im obigen Beispiel können wir eine Excel-Datei leicht in eine DataSet parsen und mit jedem DataTable einer Excel-Datei als DataTable arbeiten. Hier erfahren Sie anhand von Code-Beispielen, wie man Excel als DataSet parsen kann.
Lassen Sie uns ein weiteres Beispiel sehen, wie man jeden Zellwert aller ExcelSheets zugreift. Hier können wir jeden Zellwert von jedem ExcelSheet einer Excel-Datei zugreifen.
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#
Mit dem obigen Beispiel ist es bequem, jeden Zellwert von jedem ExcelSheet einer Excel-Datei zuzugreifen. Dieser Ansatz ist besonders nützlich, wenn man mit mehrblättrigen Arbeitsmappen arbeitet, bei denen Daten über verschiedene Registerkarten verteilt sind.
Weitere Informationen zum Lesen von Excel-Dateien ohne Interop finden Sie im Code hier. Die API-Referenzdokumentation bietet umfassende Details über alle verfügbaren Methoden und Eigenschaften auf der IronXL API-Referenz.
Tutorial Schnellzugriff
API-Referenz für IronXL
Lesen Sie mehr über die Funktionen, Klassen, Methodenfelder, Namespaces und Enums von IronXL in der Dokumentation.
Um XLSX-Dateien in C# zu lesen, verwenden Sie die Methode WorkBook.Load von IronXL. Laden Sie einfach die Excel-Datei mit IronXL.WorkBook.Load("your-file.xlsx") und greifen Sie dann auf die Arbeitsblätter zu, um Zelldaten zu lesen, Berechnungen durchzuführen und programmatisch in DataTable- oder DataSet-Formate zu konvertieren.
Welche Dateiformate werden beim Laden von Excel-Dateien unterstützt?
IronXL unterstützt mehrere Excel-Dateiformate, einschließlich .xls, .xlsx, .xlsm, .xltx und .csv-Dateien. Die WorkBook.Load-Methode erkennt das Dateiformat automatisch, so dass es sowohl für ältere als auch für moderne Excel-Dateien geeignet ist.
Wie kann ich die Excel-Lesebibliothek für mein C#-Projekt installieren?
Sie können IronXL entweder direkt herunterladen oder über NuGet Install for Visual Studio installieren. Die Software ist für Entwicklungszwecke kostenlos und bietet eine einfache Möglichkeit, mit Excel-Dateiformaten in C# zu arbeiten.
Welche verschiedenen Möglichkeiten gibt es, auf ein bestimmtes Arbeitsblatt zuzugreifen?
IronXL bietet mehrere Möglichkeiten, auf Arbeitsblätter zuzugreifen: Sie können workBook.GetWorkSheet("SheetName") verwenden, um über den Namen zuzugreifen, workBook.WorkSheets[0], um über den Index zuzugreifen, oder workBook.WorkSheets.First(), um das erste Arbeitsblatt zu erhalten.
Kann ich nach dem Laden der Excel-Daten Berechnungen mit diesen durchführen?
Ja, nachdem Sie eine XLSX-Datei mit IronXL geladen haben, können Sie verschiedene Funktionen wie Summe, Min und Max auf die Daten anwenden. Die Bibliothek bietet vollen Zugriff auf die Funktionalität von Excel-Dateien über das WorkBook-Objekt.
Ist es möglich, Excel-Arbeitsblattdaten in andere Formate zu konvertieren?
Ja, IronXL ermöglicht es Ihnen, ein Arbeitsblatt zu lesen und es in verschiedene Formate wie DataTable, DataSet und andere zu konvertieren. Dies macht es einfach, Excel-Daten in Ihre C#-Anwendungen zu integrieren.
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 hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender Handbücher.