IRONXL VERWENDEN

Datentabelle zu Excel in C# (Codebeispiel-Tutorial)

Aktualisiert 7. Januar 2024
Teilen Sie:

Es kann schwierig sein, eine Excel-Tabelle programmatisch zu ändern, und zwar aus zwei Gründen. Erstens müssen die Benutzer bei der Arbeit mit Tabellenkalkulationen eine einheitliche Schnittstelle und Dokumentenstruktur einhalten, was nicht immer einfach ist. Zweitens ist nicht immer klar, welcher Code in bestimmten Situationen funktioniert, insbesondere wenn es um komplizierte Berechnungen geht. Es gibt zahlreiche Gründe, warum die programmgesteuerte Erstellung einer Excel-Datei schwierig ist. Die Programmierer müssen zunächst die Daten im Excel-Dokument in ein lesbares Format umwandeln, dann die Daten parsen und zurückparsen, was noch schwieriger ist. Ich habe eine Lösung für dieses Problem gefunden. Ich zeige Ihnen, wie Sie mit der IronXL for .NET Excel-Bibliothek problemlos eine Excel-Datei erstellen und eine Datenbasis programmatisch in ein Excel-Blatt exportieren können. Fangen wir an:

IronXL Merkmale

  • IronXL läuft auf einer Vielzahl von Betriebssystemen, einschließlich Windows, Linuxund macOS.
  • Fast alle .NET-Frameworks werden von IronXL unterstützt, einschließlich der Konsole, der Windows Forms-Anwendung und der Web-Anwendung.
  • IronXL macht das Lesen von Excel-Dateien einfach und unkompliziert.
  • Wir können laden, bearbeiten, datentabellen exportierendatensätze exportieren, und excel-Dateiformate lesen wie XLSX-Dateien, XLS-, CSV-, TSV-, XLST-, XLSM-Dateien und mehr mit IronXL.
  • IronXL ermöglicht uns die Speicherung und export-Dateien mit einer Vielzahl von Erweiterungen, einschließlich XLS, CSV, TSV, JSON, XLSX und anderen.
  • Excel-Formulare kann von IronXL erstellt werden.
  • Text, Zahlen, Formeln, Daten, Währung, Prozentsätze und andere Datenformate für Excel-Zellen werden von IronXL unterstützt.
  • Außerdem bietet es zahlreiche sortiermöglichkeiten wie z. B. Bereich, Spalten und Zeilen, um nur einige zu nennen.
  • Die Gestaltung der Zellen in IronXL umfasst schriftartgröße, Hintergrundmuster, Rahmen und Ausrichtung, um nur einige zu nennen.
  • Mit IronXL können wir Daten aus einer Excel-Datei lesen und exportieren.
  • IronXL erfordert keine Installation von Excel oder Interop auf Ihrem Server. Die IronXL API ist schneller und einfacher zu bedienen als Microsoft Office, Interop und Excel.

1 Erstellen eines neuen Projekts in Visual Studio

Um die IronXL-Bibliothek zu verwenden, müssen wir ein .NET-Projekt in Visual Studio erstellen. Sie können eine beliebige Version von Visual Studio verwenden, es wird jedoch die neueste Version empfohlen. Sie können eine Anwendung wie Windows Forms oder verschiedene Projektvorlagen erstellen, je nach Ihren Anforderungen. Der Einfachheit halber werde ich für dieses Tutorial die Konsolenanwendung verwenden.

Wie exportiert man riesige Daten von Datatable zu Excel in C#, Abbildung 1: Erstellen Sie ein neues Projekt UI in Visual Studio

Erstellen einer neuen Projekt-UI in Visual Studio

Geben Sie dann den Projektnamen und den Standort des Projekts ein.

Wie exportiert man riesige Daten von Datatable zu Excel in C#, Abbildung 2: Konfigurationsschritt beim Erstellen eines neuen Projekts

Konfigurationsschritt bei der Erstellung eines neuen Projekts

Wählen Sie dann den unten stehenden Rahmen aus. In diesem Projekt werden wir .NET Core 6 verwenden.

Wie exportiert man riesige Daten aus Datatable zu Excel in C#, Abbildung 3: .NET-Framework Auswahl UI

.NET-Framework Auswahl UI

Sobald die Anwendung die Lösung erstellt hat, wird die Datei program.cs geöffnet, in die Sie den Code eingeben und die Anwendung erstellen/ausführen können.

How to Export Huge Data From Datatable to Excel in C#, Abbildung 4: Empty program.cs Datei auf das neue Projekt

Leere program.cs-Datei im neuen Projekt

Als nächstes können wir die Bibliothek hinzufügen, um den Code zu testen.

2 Installieren Sie die IronXL-Bibliothek

Die IronXL-Bibliothek kann auf vier Arten heruntergeladen und installiert werden.

Diese sind:

  • Verwendung von Visual Studio
  • Verwendung der Visual Studio-Befehlszeile.
  • Direkter Download von der NuGet-Website.
  • Direkter Download von der IronXL-Website.

2.1 Visual Studio verwenden

Wir können die IronXL-Bibliothek mit dem NuGet Package Manager installieren. Sie müssen zunächst den NuGet-Paketmanager öffnen und dann auf der Registerkarte Durchsuchen nach IronXL suchen. Wählen Sie IronXL aus den Suchergebnissen aus und installieren Sie es. Danach ist unser Projekt bereit für die Verwendung in der IronXL-Bibliothek.

Der folgende Screenshot zeigt, wie der NuGet Package Manager in Visual Studio geöffnet werden kann.

Wie exportiert man riesige Daten aus Datatable zu Excel in C#, Abbildung 5: Navigieren Sie zu NuGet Package Manager in Visual Studio

Navigieren Sie zu NuGet Package Manager in Visual Studio

IronXL in den Suchergebnissen:

Wie exportiert man riesige Daten von Datatable zu Excel in C#, Abbildung 6: Suchen Sie nach IronXL Bibliothek

Suchen Sie nach der IronXL-Bibliothek

2.2 Verwendung der Visual Studio-Befehlszeile

Viele Menschen lieben es, eine Konsole zu benutzen, um Operationen durchzuführen. Wir können es also auch über die Konsole installieren. Folgen Sie den folgenden Schritten, um IronXL über die Befehlszeile zu installieren.

  • Gehen Sie in Visual Studio zu Tools-> NuGet Package Manager -> Package Manager Console.
  • Geben Sie auf der Registerkarte Paketmanager-Konsole die folgende Zeile ein:
Install-Package IronXL.Excel

Jetzt wird das Paket in das aktuelle Projekt heruntergeladen/installiert und ist einsatzbereit.

Wie exportiere ich riesige Daten aus einer Datentabelle nach Excel in C#, Abbildung 7: Installieren Sie das IronXL-Paket über die Konsole

Installation des IronXL-Pakets über die Konsole

2.3 Direkter Download von der NuGet-Website

Die dritte Möglichkeit ist, das NuGet-Paket direkt von der Website herunterzuladen.

  • Navigieren Sie zum Nuget offizielle IronXL-Paketseite.
  • Wählen Sie im Menü auf der rechten Seite die Option Paket herunterladen.
  • Doppelklicken Sie auf das heruntergeladene Paket. Sie wird automatisch installiert.
  • Laden Sie anschließend die Lösung neu und verwenden Sie sie im Projekt.

2.4 Direkter Download von der IronXL-Website

Klicken Sie auf den Link zu das neueste Paket herunterladen direkt von der Website herunter. Führen Sie nach dem Herunterladen die folgenden Schritte aus, um das Paket zum Projekt hinzuzufügen.

  • Klicken Sie mit der rechten Maustaste auf das Projekt im Lösungsfenster.
  • Wählen Sie dann die Optionen Referenz und suchen Sie den Speicherort der heruntergeladenen Referenz.
  • Klicken Sie anschließend auf OK, um die Referenz hinzuzufügen.

3 Exportieren von Daten in eine Excel-Datei mit IronXL

IronXL ermöglicht es uns, Datentabellen mit einer begrenzten Anzahl von Schritten in Excel-Dateien zu exportieren.

Zunächst müssen wir den Namespace von IronXL einbinden, wie im folgenden Screenshot zu sehen ist. Sobald sie hinzugefügt ist, können wir die IronXL-Klassen und -Methoden in unserem Code verwenden.

Wie exportiert man riesige Daten aus Datatable zu Excel in C#, Abbildung 8: Include Namespace von IronXL vor der Verwendung der Bibliothek

Namespace" von IronXL einschließen, bevor die Bibliothek verwendet wird

IronXL ermöglicht es uns, Excel-Dateien zu erstellen und sie in Arbeitsmappenobjekte umzuwandeln. Nachdem wir sie in Objekte umgewandelt haben, können wir verschiedene Operationen durchführen. Im folgenden Codebeispiel wird eine Datentabelle in ein Excel-Arbeitsblatt umgewandelt, und anschließend kann eine Excel-Datei erstellt werden.

public static void ExportToExcel(string filePath)
{
    DataTable table = new DataTable();
    table.Columns.Add("DataSet_Animal", typeof(string));
    table.Rows.Add("Lion");
    table.Rows.Add("Tiger");
    table.Rows.Add("Cat");
    table.Rows.Add("Goat");
    table.Rows.Add("Panther");
    table.Rows.Add("Fox");
    table.Rows.Add("Cheetah");
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    WorkSheet ws = wb.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        ws ["A" + (rowCount)].Value = row [0].ToString();
        rowCount++;
    }
    wb.SaveAsCsv(filePath, ";");
}
public static void ExportToExcel(string filePath)
{
    DataTable table = new DataTable();
    table.Columns.Add("DataSet_Animal", typeof(string));
    table.Rows.Add("Lion");
    table.Rows.Add("Tiger");
    table.Rows.Add("Cat");
    table.Rows.Add("Goat");
    table.Rows.Add("Panther");
    table.Rows.Add("Fox");
    table.Rows.Add("Cheetah");
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    WorkSheet ws = wb.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        ws ["A" + (rowCount)].Value = row [0].ToString();
        rowCount++;
    }
    wb.SaveAsCsv(filePath, ";");
}
Public Shared Sub ExportToExcel(ByVal filePath As String)
	Dim table As New DataTable()
	table.Columns.Add("DataSet_Animal", GetType(String))
	table.Rows.Add("Lion")
	table.Rows.Add("Tiger")
	table.Rows.Add("Cat")
	table.Rows.Add("Goat")
	table.Rows.Add("Panther")
	table.Rows.Add("Fox")
	table.Rows.Add("Cheetah")
	Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
	Dim ws As WorkSheet = wb.DefaultWorkSheet
	Dim rowCount As Integer = 1
	For Each row As DataRow In table.Rows
		ws ("A" & (rowCount)).Value = row (0).ToString()
		rowCount += 1
	Next row
	wb.SaveAsCsv(filePath, ";")
End Sub
VB   C#

In dem obigen Code exportieren wir die Datentabelle in eine Excel-Datei. Zunächst erstellen wir eine "Datentabelle" und dann die Spaltenüberschriften. Nach der Erstellung der Spalten fügen wir die Spalten nacheinander hinzu. Sobald wir die Spalte hinzugefügt haben, erstellen wir die arbeitsbuch objekt. Mithilfe des Objekts können wir die Daten in das Excel-Blatt einfügen und dann an einem bestimmten Ort speichern. Wir schaffen die arbeitsblatt objekt, das es ermöglicht, ein Arbeitsblatt zu erstellen, und dann können wir dieses dem Objekt "WorkBook" hinzufügen.

Wir verwenden die "Foreach"-Schleife, um die Werte der Datentabelle nacheinander zu lesen, und fügen dann den Wert zum Arbeitsblatt hinzu. Sobald alle Werte dem Arbeitsblatt hinzugefügt wurden, speichern wir sie mit der Methode SaveAsCSV in einer CSV-Datei. Als Parameter müssen wir das Trennzeichen und den Dateinamen mit Speicherort übergeben. Ein Begrenzungszeichen ist ein optionaler Parameter, der ignoriert werden kann, wenn er nicht benötigt wird.

Wie exportiert man riesige Daten von Datatable zu Excel in C#, Abbildung 9: Der fertige Code in Visual Studio

Der fertige Code in Visual Studio

Oben sehen Sie den vollständigen Screenshot des Codes, den wir auf dem .NET Core 6 verwenden.

Ergebnis:

Wie exportiere ich riesige Daten aus einer Datentabelle nach Excel in C#, Abbildung 10: Das Ergebnis beim Öffnen der Datei in Microsoft Excel

Das Ergebnis beim Öffnen der Datei in Microsoft Excel

Oben sehen Sie das Ergebnis des ausgeführten Codebeispiels. Im Screenshot wurden alle in der Datentabelle verfügbaren Daten nacheinander in das neu erstellte Excel-Blatt eingefügt.

4 Schlussfolgerung

IronXL ist eine der am häufigsten verwendeten Excel-Bibliotheken. Sie ist nicht von einer anderen Bibliothek eines Drittanbieters abhängig. Es ist unabhängig und benötigt keine Installation von MS Excel. Es funktioniert auf mehreren Plattformen. Der Einführungspreis für IronXL beginnt bei $749. Außerdem besteht die Möglichkeit, eine Jahresgebühr für Produktsupport und Updates zu entrichten. IronXL bietet gegen einen Aufpreis eine lizenzfreie Weiterverbreitung an. Um mehr über die Preisdetails zu erfahren, besuchen Sie unsere lizenzierungsseite.

< PREVIOUS
C# Excel-Datei programmatisch öffnen (Code-Beispiel-Tutorial)
NÄCHSTES >
Verschieben von Zeilen in Excel

Sind Sie bereit, loszulegen? Version: 2024.10 gerade veröffentlicht

Gratis NuGet-Download Downloads insgesamt: 1,068,832 Lizenzen anzeigen >