Zum Fußzeileninhalt springen
IRONXL VERWENDEN

C# schnellster Weg zum Exportieren von DataTable nach Excel

Beim Arbeiten mit Tabellenkalkulationen ist die Microsoft Excel-Anwendung ein beliebtes Tabellenkalkulationstool, das zum Verwalten großer Datensätze in tabellarischer Form entwickelt wurde. Es bietet leistungsstarke Funktionen wie komplexe Berechnungen, die Datenvisualisierung durch Diagramme und Grafiken, Pivot-Tabellen und Unterstützung für die Automatisierung über Visual Basic for Applications (VBA). Seine robusten Datenanalyse- und Visualisierungstools haben Excel zu einer führenden Wahl in verschiedenen Branchen gemacht. Mit Excel können Sie Dateien einfach erstellen, bearbeiten, ansehen und teilen, wodurch Ihre Datenverwaltungsaufgaben optimiert werden.

In C# stellt das DataTable-Objekt in der ADO.NET-Bibliothek tabellarische Daten innerhalb eines Programms dar, ähnlich wie ein Excel-Arbeitsblatt. Es organisiert Daten in Zeilen und Spalten, was eine einfache Manipulation und den Export ermöglicht. Ähnlich wie Excel unterstützt DataTable Filter-, Sortier- und Formatierungsoptionen, was es zu einem unverzichtbaren Werkzeug für die Verwaltung von Datenbereichen in C# macht. DataTable wird jedoch zur Laufzeit erstellt und seine Daten gehen verloren, wenn die Anwendung geschlossen wird, es sei denn, sie werden in ein permanenteres Format wie eine Excel-Datei oder CSV-Datei exportiert.

Heute werden wir untersuchen, wie man in C# eine DataTable erstellt und deren Daten mit IronXL, einer leistungsstarken .NET Excel-Bibliothek, in ein Excel-Dokument exportiert.

IronXL: Eine .NET Excel-Bibliothek

IronXL ist eine C# .NET-Bibliothek, die den Prozess der Erstellung von Excel-Dateien vereinfacht. Mit IronXL können Sie neue Tabellenkalkulationen erstellen, vorhandene bearbeiten, mit Excel-Formeln arbeiten, die Zellen Ihrer Tabellenkalkulation gestalten und mehr. Sein umfangreiches Funktionsspektrum macht die programmatische Arbeit mit Excel-Dateien zum Kinderspiel, und vor allem funktioniert IronXL ohne Microsoft Office Interop. Das bedeutet, dass Sie Microsoft Office oder andere spezielle Abhängigkeiten nicht installieren müssen.

Mit IronXL können Sie Daten in verschiedenen Formaten wie XLS und XLSX, CSV-Daten und TSV, JSON, XML und HTML, Binär- und Byte-Array speichern oder exportieren. Es verfügt auch über starke Sicherheitseigenschaften für Arbeitsmappen, wie das Hinzufügen von Berechtigungen und Passwörtern, und ermöglicht Ihnen, die Metadaten der Arbeitsmappe zu bearbeiten.

Schritte zum Export von Daten von DataTable in eine Excel-Datei

Voraussetzungen

Um IronXL beim Exportieren von Daten von DataTable in eine Excel-Datei in C# zu verwenden, müssen die folgenden Komponenten auf einem lokalen Computer installiert sein. Schauen wir sie uns der Reihe nach an.

  1. Visual Studio - Visual Studio ist die IDE für die C#-Programmierung und muss installiert sein. Sie können die neueste Version von der Visual Studio-Website herunterladen und installieren.

    • Sobald die IDE eingerichtet ist, muss eine Konsolenanwendung/Windows-Formulare erstellt werden, die beim Export von DataTable nach Excel hilft. Die folgenden Screenshots zeigen, wie man ein Projekt erstellt.

Projekt erstellen

Jetzt wählen Sie den Projekttyp aus. In unserem Beispiel erstellen wir eine Konsolenanwendung.

Konsolen-Anwendung

Geben Sie Ihrem Projekt einen Namen und wählen Sie den Speicherort.

Projekt benennen

Wählen Sie schließlich Ihre .NET Framework-Version und klicken Sie auf "Create".

Dot NET Framework

Nach dem Klicken auf Create im letzten Screenshot wird das Projekt mit dem Namen "DemoApp" erstellt.

  1. IronXL-Bibliothek - Die IronXL-Bibliothek muss im Visual Studio-Projekt heruntergeladen und installiert werden. Es gibt mehrere Möglichkeiten, dies zu tun.

    • Mit Visual Studio - Es bietet den NuGet-Paketmanager zum Installieren von IronXL. Sie können darauf über das Tools-Menü oder den Solution Explorer zugreifen. Die folgenden Screenshots helfen, IronXL zu installieren. Navigieren Sie zuerst zu "Tools" in der oberen Leiste oder klicken Sie in Ihrem Solution Explorer mit der rechten Maustaste.

Solution Explorer

Tools - NuGet Paket Manager

Gehen Sie zu Verwaltung von NuGet-Paketen für die Lösung und suchen Sie nach IronXL. Dann müssen Sie nur auf "Installieren" drücken und die IronXL-Bibliothek wird zu Ihrem Projekt hinzugefügt.

IronXL durchsuchen

  • Entwickler-Befehlszeile - Öffnen Sie die Entwickler-Befehlszeile entweder über das Visual Studio Tools-Menü oder aus dem Visual Studio-Ordner. Geben Sie den folgenden Befehl ein, um IronXL in Ihr Projekt herunterzuladen und zu installieren:

     PM > Install-Package IronXL.Excel
     PM > Install-Package IronXL.Excel
    SHELL
  • Direkt aus dem NuGet-Paketmanager - Gehen Sie zu dieser URL https://www.nuget.org/packages/ironxl.excel/, um IronXL herunterzuladen.
  1. Nötige Namespaces hinzufügen - Um eine DataTable zu erstellen und IronXL zu verwenden, müssen beide oben in der Program.cs-Datei referenziert werden.

    using IronXL; // Add reference to the IronXL library
    using System.Data; // Add reference to System.Data for DataTable
    using IronXL; // Add reference to the IronXL library
    using System.Data; // Add reference to System.Data for DataTable
    Imports IronXL ' Add reference to the IronXL library
    Imports System.Data ' Add reference to System.Data for DataTable
    $vbLabelText   $csharpLabel

Sobald alle Voraussetzungen erfüllt sind, ist es an der Zeit, Daten von DataTable in ein Excel-Blatt zu exportieren.

DataTable in C# erstellen

Der folgende Code erstellt eine neue Datentabelle mit zwei Spaltenüberschriften und mehreren Zeilen:

// Create a new DataTable object
DataTable dt = new DataTable();
// Add column names to the DataTable
dt.Columns.Add("Animal");
dt.Columns.Add("Sound");
// Add rows representing different animals and their sounds
dt.Rows.Add("Lion", "Roars");
dt.Rows.Add("Dog", "Barks");
dt.Rows.Add("Cat", "Meows");
dt.Rows.Add("Goat", "Bleats");
dt.Rows.Add("Wolf", "Howls");
dt.Rows.Add("Cheetah", "Purrs");
// Create a new DataTable object
DataTable dt = new DataTable();
// Add column names to the DataTable
dt.Columns.Add("Animal");
dt.Columns.Add("Sound");
// Add rows representing different animals and their sounds
dt.Rows.Add("Lion", "Roars");
dt.Rows.Add("Dog", "Barks");
dt.Rows.Add("Cat", "Meows");
dt.Rows.Add("Goat", "Bleats");
dt.Rows.Add("Wolf", "Howls");
dt.Rows.Add("Cheetah", "Purrs");
' Create a new DataTable object
Dim dt As New DataTable()
' Add column names to the DataTable
dt.Columns.Add("Animal")
dt.Columns.Add("Sound")
' Add rows representing different animals and their sounds
dt.Rows.Add("Lion", "Roars")
dt.Rows.Add("Dog", "Barks")
dt.Rows.Add("Cat", "Meows")
dt.Rows.Add("Goat", "Bleats")
dt.Rows.Add("Wolf", "Howls")
dt.Rows.Add("Cheetah", "Purrs")
$vbLabelText   $csharpLabel

Zuerst erstellen wir eine neue DataTable namens "dt". Dann können wir mit Columns.Add eine festgelegte Anzahl von Spalten nach Name zur Datentabelle hinzufügen; in unserem Beispiel haben wir zwei Spalten namens "Tier" und "Geräusch". Wir verwenden dann Rows.Add, um neue Zeilen hinzuzufügen und den Inhalt für jede Zeile innerhalb der Klammern zu platzieren. Der Inhalt wird durch Kommata getrennt, wobei jede Zeichenfolge durch eine Spalte getrennt wird.

Excel-Datei mit IronXL in C# erstellen

Das Erstellen von Excel-Dateitypen von Grund auf mit IronXL ist ein zweistufiger Prozess und sehr einfach in C# umzusetzen. IronXL erstellt zuerst eine Excel-Arbeitsmappe und hilft dann, ein Arbeitsblatt hinzuzufügen. Der folgende Beispielcode zeigt, wie man eine Arbeitsmappe zusammen mit dem Arbeitsblatt erstellt:

// Create a new workbook in XLSX format
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);
// Reference to the default worksheet in the workbook
WorkSheet ws = wb.DefaultWorkSheet;
// Create a new workbook in XLSX format
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);
// Reference to the default worksheet in the workbook
WorkSheet ws = wb.DefaultWorkSheet;
' Create a new workbook in XLSX format
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
' Reference to the default worksheet in the workbook
Dim ws As WorkSheet = wb.DefaultWorkSheet
$vbLabelText   $csharpLabel

Export von Daten von DataTable in das Excel-Arbeitsblatt mit IronXL

Die Verwendung von IronXL zum Hinzufügen von Werten zu einem Arbeitsblatt vereinfacht den gesamten Prozess, da es diese Aufgabe mit minimalem Code ausführen kann. Hier lernen wir, Daten aus der DataTable, die im vorherigen Abschnitt erstellt wurde, in das neu erstellte Excel-Arbeitsblatt zu exportieren. Schauen wir uns den Code Schritt für Schritt an.

Spaltenüberschrift zum Excel-Arbeitsblatt hinzufügen

// Assign DataTable column names to the first row of the Excel worksheet
ws["A1"].Value = dt.Columns[0].ToString();
ws["B1"].Value = dt.Columns[1].ToString();
// Start adding data from the second row
int rowCount = 2;
// Assign DataTable column names to the first row of the Excel worksheet
ws["A1"].Value = dt.Columns[0].ToString();
ws["B1"].Value = dt.Columns[1].ToString();
// Start adding data from the second row
int rowCount = 2;
' Assign DataTable column names to the first row of the Excel worksheet
ws("A1").Value = dt.Columns(0).ToString()
ws("B1").Value = dt.Columns(1).ToString()
' Start adding data from the second row
Dim rowCount As Integer = 2
$vbLabelText   $csharpLabel

Im obigen Code wird der Excel-Blattspalte "A1" der Wert aus der Spalte 1 der DataTable an Index 0 zugewiesen und der nächste Wert der Excel-Spalte "B1" aus Spalte 2 an Index 1 in der DataTable. Die Variable rowCount wird auf den Wert 2 gesetzt, um Zeilen aus der DataTable ab Zeile zwei zu lesen; dies stellt sicher, dass wir die Überschriftenzeile nicht mitzählen.

Zeilen zum Excel-Arbeitsblatt hinzufügen

Der folgende Code liest jede Zeile aus der DataTable und weist sie einer neuen Zeile in der Excel-Datei zu:

// Iterate through each row in the DataTable and add to Excel worksheet
foreach (DataRow row in dt.Rows)
{
    ws["A" + (rowCount)].Value = row[0].ToString();
    ws["B" + (rowCount)].Value = row[1].ToString();
    rowCount++;
}
// Iterate through each row in the DataTable and add to Excel worksheet
foreach (DataRow row in dt.Rows)
{
    ws["A" + (rowCount)].Value = row[0].ToString();
    ws["B" + (rowCount)].Value = row[1].ToString();
    rowCount++;
}
' Iterate through each row in the DataTable and add to Excel worksheet
For Each row As DataRow In dt.Rows
	ws("A" & (rowCount)).Value = row(0).ToString()
	ws("B" & (rowCount)).Value = row(1).ToString()
	rowCount += 1
Next row
$vbLabelText   $csharpLabel

Die Variable rowCount wird jedes Mal erhöht, damit eine neue Zeile aus der DataTable in die Excel-Arbeitsblattzellen im obigen Code gelesen wird.

Excel-Datei speichern

Speichern Sie schließlich die Excel-Datei mit der SaveAs()-Methode.

// Save the workbook to a file
wb.SaveAs("DataTable_to_Excel_IronXL.xlsx");
// Save the workbook to a file
wb.SaveAs("DataTable_to_Excel_IronXL.xlsx");
' Save the workbook to a file
wb.SaveAs("DataTable_to_Excel_IronXL.xlsx")
$vbLabelText   $csharpLabel

Die Datei kann auch in anderen Formaten gespeichert werden, z. B. CSV (Comma Separated Values), JSON, XML.

// Save the workbook in different file formats
wb.SaveAsCsv("DataTable_to_Excel_IronXL.csv");
wb.SaveAsJson("DataTable_to_Excel_IronXL.json");
wb.SaveAsXml("DataTable_to_Excel_IronXL.xml");
// Save the workbook in different file formats
wb.SaveAsCsv("DataTable_to_Excel_IronXL.csv");
wb.SaveAsJson("DataTable_to_Excel_IronXL.json");
wb.SaveAsXml("DataTable_to_Excel_IronXL.xml");
' Save the workbook in different file formats
wb.SaveAsCsv("DataTable_to_Excel_IronXL.csv")
wb.SaveAsJson("DataTable_to_Excel_IronXL.json")
wb.SaveAsXml("DataTable_to_Excel_IronXL.xml")
$vbLabelText   $csharpLabel

Sie können sie auch mit einem benutzerdefinierten Trennzeichen speichern.

Ausgabe

Das endgültige Aussehen der Datei sieht so aus:

DataTable zu Excel Ausgabe

Zusammenfassung

In diesem Artikel haben wir demonstriert, wie man in C# eine DataTable mit Spalten und Zeilen erstellt und anschließend mit IronXL eine Excel-Arbeitsmappe mit einem Standard-Arbeitsblatt erstellt. Wir haben dann die tabellarischen Daten erfolgreich von der DataTable in eine Excel-Datei exportiert und im .xlsx-Format gespeichert.

IronXL ist eine benutzerfreundliche C#-Bibliothek, die es Entwicklern ermöglicht, nahtlos mit Excel-Dateien zu arbeiten, selbst ohne installierte MS Excel. Es unterstützt den Export von Daten aus verschiedenen Formaten, wie z.B. CSV-Dateien, zur weiteren Manipulation und Berechnung.

Um mehr über IronXL und sein umfangreiches Funktionsset zu erfahren, werfen Sie einen Blick auf die umfangreiche Dokumentation. Möchten Sie es selbst ausprobieren? IronXL bietet auch eine kostenlose Testversion mit vollem Zugriff auf alle Funktionen, sodass Sie sofort erkunden können, wie diese leistungsstarke Bibliothek Ihre Tabellenkalkulationsprojekte verbessern kann!

Häufig gestellte Fragen

Wie kann ich eine DataTable schnell mit C# nach Excel exportieren?

Sie können die IronXL .NET Excel-Bibliothek verwenden, um eine DataTable effizient nach Excel zu exportieren. Diese Bibliothek ermöglicht es Ihnen, Excel-Dateien zu erstellen und zu bearbeiten, ohne auf Microsoft Office Interop angewiesen zu sein.

Welche Werkzeuge sind erforderlich, um eine DataTable in C# nach Excel zu exportieren?

Um eine DataTable mithilfe von IronXL nach Excel zu exportieren, müssen Sie Visual Studio installiert haben und die IronXL-Bibliothek über den NuGet-Paket-Manager zu Ihrem Projekt hinzufügen.

Wie erstelle ich eine DataTable in einer C#-Anwendung?

In C# erstellen Sie eine DataTable, indem Sie ein neues DataTable-Objekt instanziieren. Sie können dann Spalten mit Columns.Add hinzufügen und mit Zeilen mit Rows.Add befüllen.

Was ist die Methode, um die Daten einer DataTable in eine Excel-Datei zu exportieren?

Um Daten von einer DataTable in eine Excel-Datei zu exportieren, iterieren Sie durch jede DataTable-Zeile und ordnen die Werte den entsprechenden Excel-Zellen mithilfe von IronXL-Funktionen zu.

Kann ich eine Excel-Datei mit einer .NET-Bibliothek in verschiedenen Formaten speichern?

Ja, mit IronXL können Excel-Dateien in verschiedenen Formaten gespeichert werden, einschließlich XLSX, CSV, JSON und XML, und sogar benutzerdefinierte Trennzeichen spezifizieren.

Brauche ich Microsoft Office, um Excel-Dateien mit einer C#-Bibliothek zu verwalten?

Nein, Sie benötigen kein installiertes Microsoft Office. IronXL ermöglicht es Ihnen, Excel-Dateien programmatisch zu verwalten, ohne auf Microsoft Office Interop angewiesen zu sein.

Welche Vorteile bietet die Verwendung einer .NET Excel-Bibliothek?

IronXL bietet zahlreiche Vorteile wie das Erstellen und Bearbeiten von Excel-Dateien, das Anwenden von Formeln, das Stylen von Zellen und das Exportieren von Daten in mehreren Formaten. Es unterstützt auch Sicherheitsfunktionen wie Passwortschutz.

Welche Schritte sind erforderlich, um ein Excel-Arbeitsbuch programmatisch zu speichern?

Um ein Excel-Arbeitsbuch mit IronXL zu speichern, verwenden Sie die SaveAs-Methode und wählen Sie das gewünschte Dateiformat wie XLSX, CSV oder JSON.

Gibt es eine kostenlose Testversion für eine .NET Excel-Bibliothek?

Ja, IronXL bietet eine kostenlose Testversion, die Ihnen vollen Zugriff auf seine Funktionen gibt und Entwicklern ermöglicht, seine Fähigkeiten vor einer Verpflichtung zu testen.

Wo finde ich ausführliche Dokumentation zur Verwendung einer .NET Excel-Bibliothek?

Umfassende Dokumentation für IronXL, einschließlich Leitfäden und Beispielen, finden Sie auf ihrer offiziellen Website.

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