using IronXL;
using System;
using System.Linq;
// Supported for XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Select a cell and return the converted value
int cellValue = workSheet["A2"].IntValue;
// Read from ranges of cells elegantly.
foreach (var cell in workSheet["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Calculate aggregate values such as Min, Max and Sum
decimal sum = workSheet["A2:A10"].Sum();
// Linq compatible
decimal max = workSheet["A2:A10"].Max(c => c.DecimalValue);
C# Schnellster Weg zum Exportieren von DataTable nach Excel
IRONXL VERWENDEN
C# Schnellster Weg zum Exportieren von DataTable nach Excel
Regan Pun
30. März 2023
Aktualisiert 26. September 2024
Teilen Sie:
Bei der Arbeit mit Tabellenkalkulationen ist die Microsoft Excel-Anwendung ein beliebtes Tabellenkalkulationswerkzeug, das für die Verwaltung großer Datensätze in tabellarischer Form konzipiert ist. Es bietet leistungsstarke Funktionen wie komplexe Berechnungen, Datenvisualisierung durch Diagramme und Grafiken, Pivot-Tabellen und Unterstützung für die Automatisierung über Visual Basic for Applications.(VBA). Die robusten Datenanalyse- und Visualisierungswerkzeuge haben Excel zu einer führenden Wahl in verschiedenen Branchen gemacht. Mit Excel können Sie ganz einfach Dateien erstellen, bearbeiten, anzeigen und teilen, wodurch Ihre Datenverwaltungsaufgaben optimiert werden.
In C# repräsentiert das DataTable-Objekt in der ADO.NET-Bibliothek tabellarische Daten innerhalb eines Programms, ähnlich wie ein Excel-Arbeitsblatt. Es organisiert Daten in Zeilen und Spalten, was eine einfache Manipulation und Export ermöglicht. Genau wie Excel unterstützt DataTable Filter-, Sortier- und Formatierungsoptionen, wodurch es ein unverzichtbares Tool für die Verwaltung von Datenbereichen in C# ist. Allerdings wird DataTable zur Laufzeit erstellt und seine Daten gehen verloren, wenn die Anwendung geschlossen wird, es sei denn, sie werden in ein dauerhaftes Format exportiert, wie zum Beispiel eine Excel- oder CSV-Datei.
Heute werden wir erforschen, wie man eine DataTable in C# erstellt und deren Daten mit IronXL, einer leistungsstarken .NET Excel-Bibliothek, in ein Excel-Dokument exportiert.
IronXL: Eine .NET Excel-Bibliothek
IronXList 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 Tabelle formatieren und vieles mehr. Sein umfangreiches Funktionsspektrum macht das programmatische Arbeiten mit Excel-Dateien zum Kinderspiel und, am wichtigsten, IronXL funktioniert ohne Microsoft Office Interop. Das bedeutet, dass keine Installation von Microsoft Office oder anderen speziellen Abhängigkeiten erforderlich ist.
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 Sicherheitsfunktionen für Arbeitsmappen, wie das Hinzufügen von Berechtigungen und Passwörtern, und ermöglicht Ihnen die Bearbeitung der Arbeitsmappendaten.
Schritte zum Exportieren von Daten aus einer Datentabelle in eine Excel-Datei
Voraussetzungen
Um IronXL zu verwenden, um Daten aus einer Datatable in eine Excel-Datei in C# zu exportieren, müssen die folgenden Komponenten auf dem lokalen Computer installiert werden. Schauen wir sie uns nacheinander an.
Visual Studio - Visual Studio ist die IDE für die C#-Programmierung und muss installiert werden. Sie können die neueste Version herunterladen und installieren von Visual Studio-Website.
Sobald die IDE eingerichtet ist, muss eine Konsolenanwendung/Windows-Form erstellt werden, die dabei hilft, die Datentabelle nach Excel zu exportieren. Die folgenden Screenshots zeigen, wie man ein Projekt erstellt.
Wählen Sie nun Ihren Projekttyp aus. In unserem Beispiel werden wir eine Konsolenanwendung erstellen.
Geben Sie Ihrem Projekt einen Namen und wählen Sie den Speicherort aus, an dem es gespeichert wird.
Wählen Sie schließlich Ihr .NET Framework und klicken Sie auf "Erstellen".
Nach dem Klicken auf Erstellen im letzten Screenshot wird das Projekt mit dem Namen "DemoApp" erstellt.
IronXL-Bibliothek - Die IronXL-Bibliothek muss im Visual Studio-Projekt heruntergeladen und installiert werden. Es gibt mehrere Möglichkeiten, dies zu tun.
Verwendung von Visual Studio - Es stellt den NuGet Package Manager zur Verfügung, um IronXL zu installieren. Sie können über das Menü Extras oder den Projektmappen-Explorer darauf zugreifen. Die folgenden Bildschirmabbildungen helfen bei der Installation von IronXL. Zuerst navigieren Sie zu „Tools“ in der oberen Leiste oder klicken Sie mit der rechten Maustaste innerhalb Ihres Solution Explorers.
Gehen Sie zu NuGet-Pakete für die Lösung verwalten und suchen Sie nach IronXL. Dann müssen Sie nur noch auf "Installieren" klicken, und die IronXL-Bibliothek wird zu Ihrem Projekt hinzugefügt.
Entwickler-Eingabeaufforderung - Öffnen Sie die Entwickler-Eingabeaufforderung entweder über das Menü Visual Studio Tools oder über den Ordner Visual Studio. Geben Sie den folgenden Befehl ein, um IronXL herunterzuladen und in Ihrem Projekt zu installieren:
PM > Install-Package IronXL.Excel
PM > Install-Package IronXL.Excel
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'PM > Install-Package IronXL.Excel
Notwendige Namespaces hinzufügen - Um eine DataTable zu erstellen und IronXL zu verwenden, sollten beide am Anfang der Datei Program.cs referenziert werden.
using IronXL; //add reference...
using System.Data;
using IronXL; //add reference...
using System.Data;
'new datatable dt...
Dim dt As New DataTable()
'add column names...
dt.Columns.Add("Animal")
dt.Columns.Add("Sound")
dt.Rows.Add("Lion", "Roars") ' first row...
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 ein neues DataTable namens "dt". Dann können wir mit Columns.Add eine bestimmte Anzahl von Spalten zur Datentabelle nach Namen hinzufügen. In unserem Beispiel haben wir zwei Spalten namens "Animal" und "Sound". Wir verwenden dann Rows.Add, um neue Zeilen hinzuzufügen, wobei wir den Inhalt für jede Zeile in die Klammern setzen. Der Inhalt ist durch Kommata getrennt, wobei jeder String durch Spalten getrennt ist.
Erstellen von Excel-Dateien mit IronXL in C#;
Beim Erstellen von Excel-Dateitypen von Grund auf mit IronXL handelt es sich um einen zweistufigen Prozess, der in C# sehr einfach zu implementieren ist. IronXL erstellt zuerst eine Excel-Arbeitsmappe und hilft dann, ein Arbeitsblatt hinzuzufügen. Der folgende Beispielcode zeigt, wie man ein Arbeitsmappe zusammen mit dem Arbeitsblatt erstellt:
'create new workbook...
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Dim ws As WorkSheet = wb.DefaultWorkSheet
$vbLabelText $csharpLabel
Exportieren von Daten aus einer Datentabelle in ein Excel-Arbeitsblatt mit IronXL
Die Verwendung von IronXL zur Ergänzung von Werten in Arbeitsblättern rationalisiert den gesamten Prozess, da es diese Aufgabe mit minimalem Code ausführen kann. Hier lernen wir, wie manDaten aus der DataTable exportieren die im vorherigen Abschnitt erstellt wurde, in das neu erstellte Excel-Arbeitsblatt. Schauen wir uns den Code Schritt für Schritt an.
Fügen Sie der Excel-Arbeitsmappe eine Spaltenüberschrift hinzu
ws["A1"].Value = dt.Columns[0].ToString();
ws["B1"].Value = dt.Columns[1].ToString();
int rowCount = 2;
ws["A1"].Value = dt.Columns[0].ToString();
ws["B1"].Value = dt.Columns[1].ToString();
int rowCount = 2;
ws("A1").Value = dt.Columns(0).ToString()
ws("B1").Value = dt.Columns(1).ToString()
Dim rowCount As Integer = 2
$vbLabelText $csharpLabel
Im obigen Code wird der Excel-Tabellenspalte "A1" der Wert aus der Spalte 1 des Datensatzes an Index 0 zugewiesen, und der nächste Excel-Spaltenwert "B1" wird aus Spalte 2 an Index 1 im Datensatz zugewiesen. Die Variable rowCount wird auf den Wert 2 gesetzt, um Zeilen aus der Datentabelle ab Zeile zwei zu lesen. Dadurch wird sichergestellt, dass die Kopfzeile nicht mitgezählt wird.
Zeilen zum Excel-Arbeitsblatt hinzufügen
Der folgende Code wird jede Zeile aus der Datentabelle lesen und sie einer neuen Zeile in der Excel-Datei zuweisen:
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 rowCount-Variable wird jedes Mal inkrementiert, damit eine neue Zeile gelesen wird aus demdatentabelle zu Excel arbeitsblattzellen im obigen Code.
Excel-Datei speichern
Speichern Sie schließlich die Excel-Datei mit der SaveAs() Methode.
wb.SaveAs("DataTable_to_Excel_IronXL.xlsx");
wb.SaveAs("DataTable_to_Excel_IronXL.xlsx");
wb.SaveAs("DataTable_to_Excel_IronXL.xlsx")
$vbLabelText $csharpLabel
Die Datei kann auch in anderen Formaten gespeichert werden, z.B. CSV.(Kommagetrennte Werte)jSON, XML.
Sie können es auch mit einem benutzerdefinierten Trennzeichen speichern.
Ausgabe
Die endgültige Ausgabe der Datei sieht wie folgt aus:
Zusammenfassung
In diesem Artikel haben wir gezeigt, wie man eine DataTable mit Spalten und Zeilen in C# erstellt und anschließend mit IronXL eine Excel-Arbeitsmappe mit einem Standard-Arbeitsblatt generiert. Wir haben dann erfolgreich die tabellarischen Daten aus der DataTable in eine Excel-Datei exportiert und im .xlsx-Format gespeichert.
IronXList eine benutzerfreundliche C#-Bibliothek, die es Entwicklern ermöglicht, nahtlos mit Excel-Dateien zu arbeiten, sogar ohne dass MS Excel installiert ist. Es unterstützt den Export von Daten aus verschiedenen Formaten, wie z.B. CSV-Dateien, zur weiteren Bearbeitung und Berechnung.
Um mehr über IronXL und seine umfangreichen Funktionen zu erfahren, besuchen Sie unbedingt seine umfassende dokumentation. Möchten Sie es selbst ausprobieren? IronXL bietet auch einkostenloser Testmit vollem Zugriff auf alle Funktionen, damit Sie sofort erkunden können, wie diese leistungsstarke Bibliothek Ihre Tabellenprojekte verbessern kann!
Regan schloss sein Studium an der University of Reading mit einem BA in Elektrotechnik ab. Bevor er zu Iron Software kam, konzentrierte er sich in seinen früheren Jobs auf einzelne Aufgaben. Was ihm bei Iron Software am meisten Spaß macht, ist das Spektrum der Aufgaben, die er übernehmen kann, sei es im Vertrieb, im technischen Support, in der Produktentwicklung oder im Marketing. Es macht ihm Spaß, die Art und Weise zu verstehen, wie Entwickler die Bibliothek von Iron Software nutzen, und dieses Wissen zu nutzen, um die Dokumentation und die Produkte kontinuierlich zu verbessern.
< PREVIOUS Wie exportiert man eine Datenbasis in VB.NET nach Excel?