Zum Fußzeileninhalt springen
IRONXL VERWENDEN

Wie man Excel-Dateien in C# importiert

Microsoft Excel ist eine vielseitige Tabellenkalkulationssoftware, die bei der Datenorganisation, -präsentation und -analyse hilft. Das programmatische Arbeiten mit Excel in C# kann jedoch eine Herausforderung sein. Die IronXL-Softwarebibliothek kann verwendet werden, um Excel-Dateien in C# zu importieren und zu lesen.

IronXL - Excel-Bibliothek

IronXL ist eine .NET-Excel-Bibliothek, die Benutzerfreundlichkeit, Genauigkeit und Geschwindigkeit für seine Benutzer priorisiert. Es hilft Ihnen, Excel-Dokumente zu importieren und zu lesen und eine Excel-Datei effizient mit blitzschneller Leistung zu erstellen und zu bearbeiten. Es arbeitet ohne MS Office Interop. Das bedeutet, dass es ohne installiertes Excel alle Funktionen zum Lesen von Excel-Dateien bietet. Dies macht IronXL zu einem leistungsstarken Werkzeug für Entwickler, um Excel-Dateien in C# zu importieren und zu lesen.

IronXL ist auf allen Plattformen wie Windows, Linux, MacOS, Docker, Azure und AWS verfügbar. Es ist mit allen .NET-Frameworks kompatibel. IronXL ist eine vielseitige Bibliothek, die in Konsolen-, Desktop- und Web-ASP.NET-Anwendungen integriert werden kann. Es unterstützt verschiedene Arbeitsbuchformate wie XLS- und XLSX-Dateien, XSLT und XLSM, CSV und TSV.

Einige wichtige Funktionen

  • Öffnen, Lesen von Excel-Dateien und Durchsuchen von Daten aus verschiedenen Tabellenkalkulationsformaten wie XLS/CSV/TSV/XLSX-Dateien.
  • Export von Excel-Arbeitsblättern in XLS/XLSX/CSV/TSV/JSON.
  • Verschlüsseln und Entschlüsseln von XLSM/XLTX/XLSX-Dateien mit Passwörtern.
  • Importieren von Excel-Blättern als System.Data.DataSet und System.Data.DataTable Objekte.
  • Excel-DateiFormeln werden jedes Mal neu berechnet, wenn ein Blatt bearbeitet wird.
  • Intuitive Zellbereichseinstellungen mit einer WorkSheet["A1:B10"]-einfachen Syntax.
  • Sortieren von Zellbereichen, Spalten und Zeilen.
  • Styling Cells - Font, Font Size, Background color, Border, Alignment, and Numbering formats.

Wie importiert man ein Excel-Arbeitsbuch in C#?

Voraussetzungen

Um IronXL in C# zum Lesen von Excel-Dateien zu verwenden, stellen Sie bitte sicher, dass die folgenden Komponenten auf dem Computer installiert sind:

  1. Visual Studio - Es ist die offizielle IDE zur Entwicklung von C# .NET-Anwendungen. Sie können Visual Studio von der Microsoft-Website herunterladen und installieren.
  2. IronXL - Es ist die Bibliothek, die hilft, mit Excel-Tabellen an einem gegebenen Pfad in C# zu arbeiten. Es muss in einem C#-Programm installiert sein, bevor es verwendet wird. IronXL kann von der NuGet-Website oder über NuGet-Pakete in Visual Studio Tools heruntergeladen werden. Sie können die .NET-Excel-DLL-Datei auch direkt herunterladen.

Hinzufügen notwendiger Namespaces

Sobald Visual Studio und IronXL installiert sind, referenzieren Sie die IronXL-Assembly, um IronXL im Quellcode zu verwenden. Fügen Sie die folgende Codezeile oben in die Datei im neuen Projekt ein, in dem IronXL-Funktionen verwendet werden:

using IronXL;
using IronXL;
Imports IronXL
$vbLabelText   $csharpLabel

Öffnen einer vorhandenen Excel-Datei in C#

Microsoft Excel-Tabellen werden auch als Excel-Arbeitsbücher bezeichnet. Jedes Arbeitsbuch enthält mehrere Arbeitsblätter und ein einzelnes Arbeitsblatt enthält tabellarische Zellen mit seinem Wert. To open and read an Excel file, it should be loaded using the WorkBook class and Load method present in the IronXL library. Der Code sieht wie folgt aus:

// Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");
// Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");
' Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
Dim workbook As WorkBook = WorkBook.Load("test.xlsx")
$vbLabelText   $csharpLabel

Dies öffnet die Excel-Datei in der Referenzvariable der Arbeitsbuchinstanz. Da es mehrere Arbeitsblätter haben kann, kann es verwendet werden, um ein spezifisches Arbeitsblatt oder alle auf einmal zu öffnen. Der folgende Code öffnet das erste Arbeitsblatt in der Blatt-Instanzvariablen:

WorkSheet sheet = workbook.WorkSheets.First();
WorkSheet sheet = workbook.WorkSheets.First();
Dim sheet As WorkSheet = workbook.WorkSheets.First()
$vbLabelText   $csharpLabel

Damit wird das erste Blatt in der Excel-Datei geöffnet und nun können Excel-Daten in dieses Blatt gelesen und geschrieben werden.

Geöffnete Excel-Datei

Importieren einer Excel-Datei in C#, Abbildung 1: Die Excel-Datei Die Excel-Datei

Daten aus der importierten Excel-Datei lesen

Sobald die Excel-Datei importiert ist, ist sie bereit zum Lesen von Daten. Das Lesen von Excel-Datei-Daten in C# mit IronXL ist sehr einfach und leicht. Sie können Excel-Zellenwerte einfach lesen, indem Sie die Zellreferenznummer angeben.

Der folgende Code ruft den Wert einer Zelle mit der Referenznummer "C2" ab:

// Select cells easily in Excel-notation and return the value
int cellValue = sheet["C2"].IntValue;

// Display the value
Console.WriteLine(cellValue);
// Select cells easily in Excel-notation and return the value
int cellValue = sheet["C2"].IntValue;

// Display the value
Console.WriteLine(cellValue);
' Select cells easily in Excel-notation and return the value
Dim cellValue As Integer = sheet("C2").IntValue

' Display the value
Console.WriteLine(cellValue)
$vbLabelText   $csharpLabel

Das Ergebnis ist wie folgt:

Importieren einer Excel-Datei in C#, Abbildung 2: Excel lesen Excel lesen

Now, let's read data from a range of cells in the opened Excel file. Der Code sieht wie folgt aus:

// Read from a range of cells elegantly.
foreach (var cell in sheet["A2:A6"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Read from a range of cells elegantly.
foreach (var cell in sheet["A2:A6"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
' Read from a range of cells elegantly.
For Each cell In sheet("A2:A6")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
$vbLabelText   $csharpLabel

Der Code ist sehr einfach, sauber und klar. Der Bereich der Zellen kann mit einfacher Syntax wie in einer foreach-Schleife referenziert werden: sheet["A2:A6"] und jede Zelle kann durchlaufen werden, um ihren Wert zu erhalten. Hier sehen Sie die Namen in Spalte A von Zeile 2 bis Zeile 6 auf der Konsolenausgabe:

Importieren einer Excel-Datei in C#, Abbildung 3: Zellbereich lesen Bereich von Zellen lesen

Für weitere Details zum Lesen und Schreiben von Zellwerten schauen Sie sich dieses Tutorial an Beispiel zum Lesen einer Excel-Datei in C#.

Alle Daten aus der Excel-Datei importieren

IronXL kann verwendet werden, um Excel-Blätter auf einmal mit Zeilen- und Spaltenindizes zu lesen. Die folgenden IronXL-Codebeispiele helfen dabei, die gesamten Excel-Datei-Daten im gleichen Format auf der Konsolenausgabe zu erhalten:

WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();

// Traverse all rows of Excel WorkSheet
for (int i = 0; i < sheet.Rows.Count(); i++)
{
    // Traverse all columns of specific Row
    for (int j = 0; j < sheet.Columns.Count(); j++)
    {
        // Get the values
        string val = sheet.Rows[i].Columns[j].Value.ToString();
        Console.Write("{0}\t", val);
    }
    Console.WriteLine();
}
WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();

// Traverse all rows of Excel WorkSheet
for (int i = 0; i < sheet.Rows.Count(); i++)
{
    // Traverse all columns of specific Row
    for (int j = 0; j < sheet.Columns.Count(); j++)
    {
        // Get the values
        string val = sheet.Rows[i].Columns[j].Value.ToString();
        Console.Write("{0}\t", val);
    }
    Console.WriteLine();
}
Imports Microsoft.VisualBasic

Dim workbook As WorkBook = WorkBook.Load("test.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets.First()

' Traverse all rows of Excel WorkSheet
For i As Integer = 0 To sheet.Rows.Count() - 1
	' Traverse all columns of specific Row
	For j As Integer = 0 To sheet.Columns.Count() - 1
		' Get the values
		Dim val As String = sheet.Rows(i).Columns(j).Value.ToString()
		Console.Write("{0}" & vbTab, val)
	Next j
	Console.WriteLine()
Next i
$vbLabelText   $csharpLabel

Ausgabedatei

Importieren einer Excel-Datei in C#, Abbildung 4: Die Ausgabekonsole für das Lesen einer Excel-Datei Die Ausgabekonsole für das Lesen einer Excel-Datei

Alt-Text für Bild hinzufügen.

Zusammenfassung

Dieser Artikel zeigte, wie man eine Excel-Datei in C# ohne installiertes Microsoft Excel importiert und liest. Es wurden dann mehrere Möglichkeiten betrachtet, Daten aus einer Excel-Tabelle zu lesen. IronXL hilft auch beim Erstellen von Excel-Dateien in C# ohne installiertes Excel.

IronXL bietet eine All-in-One-Lösung für alle Aufgaben im Zusammenhang mit Microsoft Excel-Dokumenten, die programmgesteuert implementiert werden sollen. Sie können Formeln berechnen, Zeichenfolgen oder Zahlen sortieren, kürzen und anhängen, suchen und ersetzen, zusammenführen und aufteilen, Dateien speichern usw. Sie können Zellwerte bearbeiten und auch Zieldatenformate festlegen sowie Tabellendaten validieren. Es unterstützt auch CSV-Dateien und hilft Ihnen, wie mit Excel-Daten zu arbeiten.

IronXL is available for a free trial and can be IronXL ist für eine kostenlose Testversion verfügbar und kann für die kommerzielle Nutzung mit seinem Lite-Paket ab $799 lizenziert werden.

Häufig gestellte Fragen

Wie kann ich eine Excel-Datei in C# importieren und lesen, ohne Interop zu verwenden?

Sie können Excel-Dateien in C# mit der IronXL-Bibliothek importieren und lesen. Laden Sie die Excel-Datei einfach mit WorkBook.Load("file.xlsx"), um auf die Daten zuzugreifen und sie zu verarbeiten, ohne dass Microsoft Excel installiert sein muss.

Mit welchen Plattformen ist die IronXL-Bibliothek kompatibel?

IronXL ist mit allen .NET-Frameworks kompatibel und kann auf mehreren Plattformen verwendet werden, einschließlich Windows, Linux, MacOS, Docker, Azure und AWS.

Kann ich IronXL verwenden, um Excel-Dateien zu bearbeiten, ohne dass Microsoft Excel installiert ist?

Ja, IronXL ermöglicht es Ihnen, Excel-Dateien programmatisch in C# zu erstellen und zu bearbeiten, ohne dass Microsoft Excel auf Ihrem System installiert sein muss.

Welche Excel-Formate kann IronXL verarbeiten?

IronXL unterstützt verschiedene Excel-Dateiformate wie XLS, XLSX, CSV, TSV und viele mehr, was einen einfachen Import und die Manipulation von Daten ermöglicht.

Was sind die Voraussetzungen für die Verwendung von IronXL in einem C#-Projekt?

Um IronXL zu verwenden, stellen Sie sicher, dass Visual Studio installiert ist. Sie können IronXL über den NuGet-Paketmanager zu Ihrem Projekt hinzufügen oder das .NET Excel-DLL herunterladen und referenzieren.

Wie kann ich ein Excel-Arbeitsbuch mit IronXL in C# laden?

Um ein Excel-Arbeitsbuch in C# zu laden, verwenden Sie IronXLs WorkBook.Load("path/to/file.xlsx")-Methode, die es Ihnen ermöglicht, das Arbeitsbuch zu öffnen und zu bearbeiten.

Ist es möglich, Excel-Formeln mit IronXL zu verarbeiten?

Ja, IronXL kann Excel-Formeln nahtlos verarbeiten und neu berechnen, wenn ein Arbeitsblatt bearbeitet wird, um die Genauigkeit der Datenberechnungen sicherzustellen.

Wie lese ich Daten aus einer bestimmten Zelle mit IronXL?

Um Daten aus einer bestimmten Zelle zu lesen, verwenden Sie IronXL-Syntax wie sheet["B2"].StringValue, um den Wert aus Zelle B2 zu erhalten.

Kann ich über einen Bereich von Zellen in einem Excel-Blatt mit IronXL iterieren?

Ja, Sie können über einen Bereich von Zellen iterieren, indem Sie IronXL mit einer Syntax wie foreach (var cell in sheet["A1:C3"]) verwenden, um jede Zelle einzeln zu verarbeiten.

Wie kann IronXL in ASP.NET-Anwendungen integriert werden?

IronXL kann leicht in ASP.NET-Anwendungen integriert werden, indem Sie die Bibliothek über NuGet hinzufügen und in Ihrem Projekt referenzieren, um die Manipulation von Excel-Dateien in Webanwendungen zu ermöglichen.

Jordi Bardia
Software Ingenieur
Jordi ist am besten in Python, C# und C++ versiert. Wenn er nicht bei Iron Software seine Fähigkeiten einsetzt, programmiert er Spiele. Mit Verantwortung für Produkttests, Produktentwicklung und -forschung trägt Jordi mit immensem Wert zur kontinuierlichen Produktverbesserung bei. Die abwechslungsreiche Erfahrung hält ihn gefordert und engagiert, ...
Weiterlesen