How to Import Excel Files in C#

This article was translated from English: Does it need improvement?
Translated
View the article in English

Als Entwickler müssen wir häufig Daten aus Excel-Dateien importieren und verwenden, um unsere Anwendungs- und Datenverwaltungsanforderungen zu erfüllen. Ohne viele Codezeilen zu benötigen, bietet IronXL uns eine einfache Möglichkeit, genau die Daten zu importieren, die wir direkt in ein C#-Projekt benötigen und dann programmatisch zu manipulieren.

Schnellstart: Laden Sie Ihre Excel-Datei sofort

Mit nur einem Methodenaufruf unter Verwendung der timeout-freien API von IronXL können Sie jedes unterstützte Excel-Blatt (XLSX, CSV usw.) in Sekundenschnelle laden—kein Interop, kein Aufwand. Beginnen Sie sofort mit der Interaktion mit dem Arbeitsbuch, indem Sie bei Bedarf auf Zellen, Bereiche oder Blätter zugreifen.

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronXL with NuGet Package Manager

    PM > Install-Package IronXL.Excel

  2. Copy and run this code snippet.

    WorkBook wb = IronXL.WorkBook.Load("path/to/data.xlsx");
  3. Deploy to test on your live environment

    Start using IronXL in your project today with a free trial
    arrow pointer
class="learnn-how-section">
class="row">
class="col-sm-6">

Excel-Daten C# importieren

  • Daten mit der IronXL-Bibliothek importieren
  • Excel-Daten in C# importieren
  • Daten eines bestimmten Zellbereichs importieren
  • Excel-Daten mit Aggregatfunktionen SUM, AVG, MIN, MAX und mehr importieren
class="col-sm-6">
class="download-card"> How To Work related to How to Import Excel Files in C#

class="hsg-featured-snippet">

Minimaler Workflow (5 Schritte)

  1. Laden Sie die C#-Bibliothek herunter und installieren Sie sie, um Excel-Dateien zu importieren
  2. Bereiten Sie die zu importierenden Excel-Dateien vor
  3. Verwenden Sie die Laden-Methode, um Tabellenblatt zu importieren
  4. Bearbeiten Sie die geladene Excel-Datei mit intuitiven APIs
  5. Exportieren Sie die bearbeitete Excel-Datei in verschiedene Typen

class="tutorial-segment-title">Schritt 1

1. Daten mit der IronXL-Bibliothek importieren

Importieren Sie Daten mit den von der IronXL Excel-Bibliothek bereitgestellten Funktionen, die wir in diesem Tutorial verwenden werden. Die Software ist für die Entwicklung kostenlos verfügbar.

Install into your C# Project via DLL Download or navigate using the NuGet package.

Install-Package IronXL.Excel

class="tutorial-segment-title">Wie man Tutorial

2. WorkSheet für das Projekt zugreifen

Für unsere Projektanforderungen werden wir heute Excel-Daten in unsere C#-Anwendung importieren, wobei wir die in Schritt 1 installierte IronXL-Software verwenden.

Für Schritt 2 laden wir unser Excel-Arbeitsbuch in unser CSharp-Projekt, indem wir die WorkBook.Load()-Funktion von IronXL verwenden. Wir geben den Pfad des Excel-Arbeitsbuchs als String-Parameter in dieser Funktion an, so:

// Load Excel file
WorkBook wb = WorkBook.Load("Path");
// Load Excel file
WorkBook wb = WorkBook.Load("Path");
' Load Excel file
Dim wb As WorkBook = WorkBook.Load("Path")
$vbLabelText   $csharpLabel

Die Excel-Datei am angegebenen Pfad wird in wb geladen.

Als Nächstes müssen wir auf ein bestimmtes Arbeitsblatt der Excel-Datei zugreifen, deren Daten ins Projekt importiert werden. Zu diesem Zweck können wir die GetWorkSheet()-Funktion von IronXL verwenden, wobei wir den Blattnamen als String-Parameter übergeben, um anzugeben, welches Blatt des Arbeitsbuchs importiert werden soll.

// Specify sheet name of Excel WorkBook
WorkSheet ws = wb.GetWorkSheet("SheetName");
// Specify sheet name of Excel WorkBook
WorkSheet ws = wb.GetWorkSheet("SheetName");
' Specify sheet name of Excel WorkBook
Dim ws As WorkSheet = wb.GetWorkSheet("SheetName")
$vbLabelText   $csharpLabel

Das Arbeitsblatt wird als ws importiert, und wb ist das Arbeitsbuch, das wir im obigen Codebeispiel definiert haben.

Es gibt auch die folgenden alternativen Möglichkeiten, um ein Excel-Arbeitsblatt in das Projekt zu importieren.

// Import WorkSheet by various methods

// by sheet indexing
WorkSheet mySheet = wb.WorkSheets[SheetIndex];

// get default WorkSheet
WorkSheet defaultSheet = wb.DefaultWorkSheet;

// get first WorkSheet
WorkSheet firstSheet = wb.WorkSheets.First();

// for the first or default sheet
WorkSheet firstOrDefaultSheet = wb.WorkSheets.FirstOrDefault();
// Import WorkSheet by various methods

// by sheet indexing
WorkSheet mySheet = wb.WorkSheets[SheetIndex];

// get default WorkSheet
WorkSheet defaultSheet = wb.DefaultWorkSheet;

// get first WorkSheet
WorkSheet firstSheet = wb.WorkSheets.First();

// for the first or default sheet
WorkSheet firstOrDefaultSheet = wb.WorkSheets.FirstOrDefault();
' Import WorkSheet by various methods

' by sheet indexing
Dim mySheet As WorkSheet = wb.WorkSheets(SheetIndex)

' get default WorkSheet
Dim defaultSheet As WorkSheet = wb.DefaultWorkSheet

' get first WorkSheet
Dim firstSheet As WorkSheet = wb.WorkSheets.First()

' for the first or default sheet
Dim firstOrDefaultSheet As WorkSheet = wb.WorkSheets.FirstOrDefault()
$vbLabelText   $csharpLabel

Jetzt können wir problemlos jede Art von Daten aus den angegebenen Excel-Dateien importieren. Lassen Sie uns alle möglichen Aspekte sehen, die wir verwenden, um Excel-Dateidaten in unser Projekt zu importieren.


3. Excel-Daten in C# importieren

Dies ist der grundlegende Aspekt des Imports von Excel-Dateidaten in unser Projekt.

Zu diesem Zweck können wir ein Zelladressierungssystem verwenden, um anzugeben, welche Zelldaten wir importieren müssen. Es wird den Wert einer bestimmten Zelladresse aus der Excel-Datei zurückgeben.

var cellValue = ws["Cell Address"];
var cellValue = ws["Cell Address"];
Dim cellValue = ws("Cell Address")
$vbLabelText   $csharpLabel

Wir können auch Zelldaten aus Excel-Dateien nach Zeilen- und Spaltenindex importieren. Diese Codezeile gibt den Wert des spezifischen Zeilen- und Spaltenindex zurück.

var cellValueByIndex = ws.Rows[RowIndex].Columns[ColumnIndex];
var cellValueByIndex = ws.Rows[RowIndex].Columns[ColumnIndex];
Dim cellValueByIndex = ws.Rows(RowIndex).Columns(ColumnIndex)
$vbLabelText   $csharpLabel

Wenn wir importierte Zellwerte Variablen zuweisen möchten, können wir diesen Code verwenden.

// Import Data by Cell Address
// by cell addressing
string val = ws["Cell Address"].ToString();

// by row and column indexing
string valWithIndexing = ws.Rows[RowIndex].Columns[ColumnIndex].Value.ToString();
// Import Data by Cell Address
// by cell addressing
string val = ws["Cell Address"].ToString();

// by row and column indexing
string valWithIndexing = ws.Rows[RowIndex].Columns[ColumnIndex].Value.ToString();
' Import Data by Cell Address
' by cell addressing
Dim val As String = ws("Cell Address").ToString()

' by row and column indexing
Dim valWithIndexing As String = ws.Rows(RowIndex).Columns(ColumnIndex).Value.ToString()
$vbLabelText   $csharpLabel

In den obigen Beispielen beginnt der Zeilen- und Spaltenindex bei 0.


4. Excel-Daten eines bestimmten Bereichs importieren

Wenn wir Daten in einem bestimmten Bereich aus einem Excel-Arbeitsbuch importieren möchten, kann dies einfach mit der range-Funktion erfolgen. Um den Bereich zu definieren, müssen wir die Start- und Endzellenadressen beschreiben. Auf diese Weise werden alle Zellwerte innerhalb des angegebenen Bereichs zurückgegeben.

var rangeData = ws["Starting Cell Address:Ending Cell Address"];
var rangeData = ws["Starting Cell Address:Ending Cell Address"];
Dim rangeData = ws("Starting Cell Address:Ending Cell Address")
$vbLabelText   $csharpLabel

Für weitere Informationen zum Arbeiten mit Bereichen in Excel-Dateien sehen Sie sich die bereitgestellten Codebeispiele an.

:path=/static-assets/excel/content-code-examples/how-to/csharp-import-excel-import.cs
using IronXL;
using System;

// Import Excel WorkBook
WorkBook wb = WorkBook.Load("sample.xlsx");

// Specify WorkSheet
WorkSheet ws = wb.GetWorkSheet("Sheet1");

// Import data of specific cell
string val = ws["A4"].Value.ToString();
Console.WriteLine("Import Value of A4 Cell address: {0}", val);

Console.WriteLine("import Values in Range From B3 To B9 :\n");

// Import data in specific range
foreach (var item in ws["B3:B9"])
{
    Console.WriteLine(item.Value.ToString());
}

Console.ReadKey();
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Der obige Code zeigt die folgende Ausgabe an:

class="center-image-wrapper"> 1output related to 4. Excel-Daten eines bestimmten Bereichs importieren

Mit den Werten der Excel-Datei sample.xlsx als:

class="center-image-wrapper"> 1excel related to 4. Excel-Daten eines bestimmten Bereichs importieren

5. Excel-Daten durch Aggregatfunktionen importieren

Wir können auch Aggregatfunktionen auf Excel-Dateien anwenden und die resultierenden Daten aus diesen Aggregatfunktionen importieren. Hier sind einige Beispiele für die verschiedenen Funktionen und wie man sie verwendet.

  • Sum()

    // To find the sum of a specific cell range
    var sum = ws["Starting Cell Address:Ending Cell Address"].Sum();
    // To find the sum of a specific cell range
    var sum = ws["Starting Cell Address:Ending Cell Address"].Sum();
    ' To find the sum of a specific cell range
    Dim sum = ws("Starting Cell Address:Ending Cell Address").Sum()
    $vbLabelText   $csharpLabel
  • Average()

    // To find the average of a specific cell range
    var average = ws["Starting Cell Address:Ending Cell Address"].Avg();
    // To find the average of a specific cell range
    var average = ws["Starting Cell Address:Ending Cell Address"].Avg();
    ' To find the average of a specific cell range
    Dim average = ws("Starting Cell Address:Ending Cell Address").Avg()
    $vbLabelText   $csharpLabel
  • Min()

    // To find the minimum in a specific cell range
    var minimum = ws["Starting Cell Address:Ending Cell Address"].Min();
    // To find the minimum in a specific cell range
    var minimum = ws["Starting Cell Address:Ending Cell Address"].Min();
    ' To find the minimum in a specific cell range
    Dim minimum = ws("Starting Cell Address:Ending Cell Address").Min()
    $vbLabelText   $csharpLabel
  • Max()

    // To find the maximum in a specific cell range
    var maximum = ws["Starting Cell Address:Ending Cell Address"].Max();
    // To find the maximum in a specific cell range
    var maximum = ws["Starting Cell Address:Ending Cell Address"].Max();
    ' To find the maximum in a specific cell range
    Dim maximum = ws("Starting Cell Address:Ending Cell Address").Max()
    $vbLabelText   $csharpLabel

Sie können mehr über das Arbeiten mit Aggregatfunktionen in Excel für C# erfahren und mehr über das Abrufen von Daten auf verschiedenen Methoden lernen.

Lassen Sie uns ein Beispiel sehen, wie man Excel-Dateidaten durch Anwendung dieser Funktionen importiert.

:path=/static-assets/excel/content-code-examples/how-to/csharp-import-excel-math-functions.cs
using IronXL;
using System;

// Import Excel file
WorkBook wb = WorkBook.Load("sample.xlsx");

// Specify WorkSheet
WorkSheet ws = wb.GetWorkSheet("Sheet1");

// Import Excel file data by applying aggregate functions
decimal sum = ws["D2:D9"].Sum();
decimal avg = ws["D2:D9"].Avg();
decimal min = ws["D2:D9"].Min();
decimal max = ws["D2:D9"].Max();

Console.WriteLine("Sum From D2 To D9: {0}", sum);
Console.WriteLine("Avg From D2 To D9: {0}", avg);
Console.WriteLine("Min From D2 To D9: {0}", min);
Console.WriteLine("Max From D2 To D9: {0}", max);

Console.ReadKey();
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Der obige Code gibt uns dieses Ergebnis:

class="center-image-wrapper"> 2output related to 5. Excel-Daten durch Aggregatfunktionen importieren

Und unsere Datei sample.xlsx wird diese Werte haben:

class="center-image-wrapper"> 2excel related to 5. Excel-Daten durch Aggregatfunktionen importieren

6. Vollständige Excel-Daten importieren

Wenn wir vollständige Excel-Dateidaten in unser C#-Projekt importieren möchten, können wir zuerst unser geladenes Arbeitsbuch in ein DataSet parsen. Auf diese Weise würden die vollständigen Excel-Daten in das DataSet importiert und Arbeitsblätter in Excel-Dateien werden zu DataTables innerhalb dieses DataSets. Hier ist es in Aktion:

// Import WorkBook into DataSet
DataSet ds = wb.ToDataSet();
// Import WorkBook into DataSet
DataSet ds = wb.ToDataSet();
' Import WorkBook into DataSet
Dim ds As DataSet = wb.ToDataSet()
$vbLabelText   $csharpLabel

Auf diese Weise wird unser spezifisch angegebenes Arbeitsblatt in ein DataSet importiert, das wir nach unseren Anforderungen verwenden können.

Häufig wird die erste Spalte einer Excel-Datei als ColumnName verwendet. In diesem Fall müssen wir die erste Spalte zu einem DataTable ColumnName machen. Um dies zu tun, setzen wir den booleschen Parameter der ToDataSet()-Funktion von IronXL wie folgt:

// Import WorkBook into DataSet with first row as ColumnNames
DataSet ds = wb.ToDataSet(true);
// Import WorkBook into DataSet with first row as ColumnNames
DataSet ds = wb.ToDataSet(true);
' Import WorkBook into DataSet with first row as ColumnNames
Dim ds As DataSet = wb.ToDataSet(True)
$vbLabelText   $csharpLabel

Dies wird die erste Spalte der Excel-Datei als DataTable ColumnName machen.

Lassen Sie uns ein vollständiges Beispiel sehen, wie man Excel-Daten in ein DataSet importiert und die erste Spalte eines Excel-Arbeitsblatts als DataTable ColumnName verwendet:

:path=/static-assets/excel/content-code-examples/how-to/csharp-import-excel-dataset.cs
using IronXL;
using System;
using System.Data;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");

// Import Excel data into a DataSet
DataSet ds = wb.ToDataSet(true);

Console.WriteLine("Excel file data imported to dataset successfully.");
Console.ReadKey();
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Mit Excel-Dataset- und Datatable-Funktionen zu arbeiten kann kompliziert sein, aber wir haben weitere Beispiele verfügbar, um Dateidaten in Ihr C#-Projekt einzubauen.


class="tutorial-segment-title">Schnellzugriff auf die Bibliothek

class="tutorial-section">
class="row">
class="col-sm-8">

Erkunden Sie die IronXL-Referenz

Erfahren Sie mehr über das Abrufen von Excel-Daten über Zellen, Bereiche, Datasets und Datatables in unserer vollständigen Dokumentations-API-Referenz für IronXL.

Erkunden Sie die IronXL-Referenz
class="col-sm-4">
class="tutorial-image"> Documentation related to class=Schnellzugriff auf die Bibliothek" class="img-responsive add-shadow img-responsive img-popup" src="/img/svgs/documentation.svg" loading="lazy">

Häufig gestellte Fragen

Wie kann ich Excel-Dateien in C# ohne Interop importieren?

Sie können IronXL verwenden, um Excel-Dateien in C# ohne Interop zu importieren. Verwenden Sie einfach die WorkBook.Load()-Methode, um Ihre Datei zu laden und auf Daten über verschiedene Funktionen wie GetWorkSheet() zuzugreifen.

Wie installiere ich die IronXL-Bibliothek in einem C#-Projekt?

Installieren Sie IronXL über NuGet, indem Sie den Befehl Install-Package IronXL.Excel in der Paket-Manager-Konsole ausführen oder laden Sie die DLL direkt von der IronXL-Website herunter.

Welche Methoden sind verfügbar, um auf spezifische Arbeitsblätter in IronXL zuzugreifen?

Sie können auf spezifische Arbeitsblätter in IronXL über die GetWorkSheet()-Methode zugreifen, indem Sie den Blattnamen als Argument übergeben.

Wie importiere ich Daten aus einem speziellen Zellenbereich in C#?

Mit IronXL können Sie Daten aus einem speziellen Zellenbereich importieren, indem Sie die Start- und Endzellenadressen in der Bereichsfunktion definieren, was eine präzise Datenmanipulation ermöglicht.

Was sind die Vorteile der Verwendung von IronXL für die Excel-Datenverwaltung in C#?

IronXL bietet Flexibilität in der Excel-Datenverwaltung mit Funktionen wie dem Import von Daten über Zellen, Bereiche und Aggregatfunktionen. Es vereinfacht Operationen, ohne dass Interop erforderlich ist und bietet eine robuste API für fortgeschrittene Datenverarbeitung.

Wie können Aggregatfunktionen beim Importieren von Excel-Daten verwendet werden?

Sie können IronXL verwenden, um Aggregatfunktionen wie Summe, Durchschnitt, Minimum und Maximum beim Importieren von Daten aus Excel-Dateien durchzuführen, was die Datenanalysemöglichkeiten verbessert.

Ist es möglich, Excel-Arbeitsblätter in DataTables in C# zu konvertieren?

Ja, Sie können Excel-Arbeitsblätter in DataTables in C# konvertieren, indem Sie das Arbeitsbuch in IronXL laden und die ToDataSet()-Methode verwenden, was eine umfassende Datenverwaltung erleichtert.

Kann ich die erste Zeile eines Excel-Blattes als Spaltenüberschriften in C# verwenden?

IronXL erlaubt es Ihnen, die erste Zeile eines Excel-Blattes als Spaltenüberschriften zu verwenden, indem Sie den booleschen Parameter der ToDataSet()-Funktion auf wahr setzen, was die Daten in eine strukturierte DataTable konvertiert.

Wo finde ich weitere Informationen zur Verwendung von IronXL für Excel-Operationen?

Für weitere Details zur Verwendung von IronXL für Excel-Operationen erkunden Sie die umfassende API-Dokumentation von IronXL, die Einblicke in Datenmanipulationstechniken und erweiterte Funktionalitäten bietet.

Curtis Chau
Technischer Autor

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 ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 1,686,155 | Version: 2025.11 gerade veröffentlicht