
Wie man Excel in DataTable in C# Ohne oledb konvertiert
Microsoft Excel ist ein robustes Tabellenkalkulationsprogramm, das von Microsoft erstellt wurde. Es ist ein weit verbreitetes Werkzeug zur Datenorganisation, Analyse und Visualisierung. Es ist Teil der Office-Suite von Microsoft. Aufgrund seiner verschiedenen Funktionen ist Excel ein vielseitiges Werkzeug, das von Fachleuten, Einzelpersonen, Organisationen und Universitäten genutzt werden kann.
Excel wird in einer Vielzahl von Sektoren eingesetzt, einschließlich Finanzen, Buchhaltung, Unternehmensanalyse, Datenanalyse, Forschung, Bildung und mehr. Aufgrund seiner Vielseitigkeit und seines umfangreichen Funktionsumfangs ist es das bevorzugte Werkzeug zur Organisation, Bewertung und Präsentation von Daten sowohl in persönlichen als auch professionellen Situationen. In diesem Artikel werden wir Excel in eine DataTable in C# ohne OLEDB-Konnektivität konvertieren.
Wie konvertieren Sie Excel in DataTable in C# ohne OLEDB
- Erstellen Sie ein neues Visual Studio-Projekt.
- Installieren Sie die benötigte Bibliothek.
- Laden Sie die Excel-Datei in ein Objekt.
- Konvertieren Sie die Excel-Blattdaten mithilfe spezifischer Methoden in eine DataTable.
- Verwenden Sie die DataTable nach Bedarf.
IronXL-Bibliothek
Eine Alternative zu Microsoft Interop für den Umgang mit Excel-Dateien in .NET-Programmen ist IronXL. Während Microsoft Interop die Verwendung der Interop-Assemblies erfordert, um mit Excel zu verbinden, bietet IronXL eine einfachere, effizientere und leistungsfähigere Möglichkeit, Excel-Dateien programmatisch in .NET-Umgebungen zu manipulieren.
Die folgenden sind einige Vorteile der Verwendung von IronXL:
- Leistung und Ressourcenschonung: IronXL übertrifft Microsoft Interop in Bezug auf Leistung und Ressourceneffizienz, da es sich nicht darauf verlässt, dass das Excel-Programm auf dem PC installiert ist.
- Lesbarkeit und Einfachheit: IronXL bietet eine einfachere API, die das Lesen, Schreiben und Manipulieren von Excel-Dateien erleichtert, ohne die Nachteile von Microsoft Interop.
- Kompatibilität und Abhängigkeit: IronXL beseitigt Abhängigkeiten und potenzielle Kompatibilitätsprobleme mit verschiedenen Office- oder Excel-Versionen, indem Microsoft Excel nicht auf dem PC installiert sein muss.
- Plattformunabhängigkeit: Während Microsoft Interop enger mit bestimmten Microsoft Office-Versionen verknüpft ist, bietet IronXL mehr Flexibilität und Einfachheit bei der Bereitstellung in einem breiteren Spektrum von Umgebungen und Plattformen.
Da IronXL schneller, einfacher zu bedienen ist und weniger Software von Drittanbietern installiert werden muss, ist es oft die bevorzugte Wahl for .NET-Entwickler, die programmatisch mit Excel-Dateien arbeiten müssen. Allerdings können Faktoren wie die Projektspezifika, die bestehende Infrastruktur und die Vertrautheit des Benutzers mit jeder Bibliothek ihre Wahl beeinflussen.
Berücksichtigen Sie immer die Bedürfnisse Ihrer Anwendung, wenn Sie zwischen diesen Lösungen wählen. Für weitere Informationen über die IronXL-Bibliothek besuchen Sie diese Website.
Erstellen eines neuen Projekts in Visual Studio
Um Visual Studio zu öffnen, klicken Sie im Menü auf File und wählen Sie "Neues Projekt". Wählen Sie dann "Windows Forms Application".

Nachdem Sie den Dateispeicherort ausgewählt haben, geben Sie den Projektnamen in das entsprechende Textfeld ein. Klicken Sie anschließend auf die Schaltfläche "Erstellen" und wählen Sie das erforderliche .NET Framework aus, wie im folgenden Beispiel zu sehen.

Der gewählte Anwendungstyp bestimmt, wie das Visual Studio-Projekt strukturiert wird. Um Code hinzuzufügen, können Sie die Program.cs Datei öffnen und die Anwendung mit der Konsole, Windows oder Webanwendung erstellen oder ausführen.

Fügen Sie nun die benötigte Bibliothek hinzu und testen Sie den Code.
Installation der IronXL-Bibliothek
Um die IronXL-Bibliothek zu installieren, öffnen Sie die NuGet-Paket-Manager-Konsole und geben Sie den folgenden Befehl ein:

Alternativ können Sie den NuGet-Paketmanager verwenden, um nach dem Paket "IronXL" zu suchen. Dies zeigt eine Liste von NuGet-Paketen, die mit IronXL zusammenhängen, aus der Sie das benötigte auswählen können.

Excel-Datei in Datentabelle konvertieren
Der folgende Code zeigt, wie man eine Excel-Datei liest und sie nach der Installation des Pakets in ein DataTable konvertiert.
// Necessary namespaces for IronXL and application namespaces
using IronXL;
using System;
using System.Data;
using System.Windows.Forms;
namespace DataTableWindowsForm
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
/// <summary>
/// Exports data from an Excel file specified by the user through a file dialog.
/// </summary>
/// <param name="filename">The name of the file to export data from.</param>
private void ExportData(string filename)
{
string importFilePath = string.Empty;
openFileDialog1.Filter = "Excel (*.xlsx)|*.xlsx";
DialogResult result = openFileDialog1.ShowDialog();
if (result == DialogResult.OK)
{
importFilePath = openFileDialog1.FileName;
}
if (!string.IsNullOrEmpty(importFilePath))
{
// Load the Excel document
var excelDoc = WorkBook.Load(importFilePath);
// Select the first worksheet
var worksheet = excelDoc.WorkSheets[0];
// Convert worksheet to a DataTable
DataTable dt = worksheet.ToDataTable();
// Bind DataTable to the DataGridView
dataGridView1.DataSource = dt;
}
}
}
}' Necessary namespaces for IronXL and application namespaces
Imports IronXL
Imports System
Imports System.Data
Imports System.Windows.Forms
Namespace DataTableWindowsForm
Partial Public Class Form1
Inherits Form
Public Sub New()
InitializeComponent()
End Sub
''' <summary>
''' Exports data from an Excel file specified by the user through a file dialog.
''' </summary>
''' <param name="filename">The name of the file to export data from.</param>
Private Sub ExportData(ByVal filename As String)
Dim importFilePath As String = String.Empty
openFileDialog1.Filter = "Excel (*.xlsx)|*.xlsx"
Dim result As DialogResult = openFileDialog1.ShowDialog()
If result = System.Windows.Forms.DialogResult.OK Then
importFilePath = openFileDialog1.FileName
End If
If Not String.IsNullOrEmpty(importFilePath) Then
' Load the Excel document
Dim excelDoc = WorkBook.Load(importFilePath)
' Select the first worksheet
Dim worksheet = excelDoc.WorkSheets(0)
' Convert worksheet to a DataTable
Dim dt As DataTable = worksheet.ToDataTable()
' Bind DataTable to the DataGridView
dataGridView1.DataSource = dt
End If
End Sub
End Class
End NamespaceIm obigen Code:
- Das Windows-Formular lädt die Excel-Dateien und konvertiert sie in eine neue DataTable.
- Es nutzt einen Dateidialog zur Auswahl einer Excel-Datei.
- Die
WorkBook.Load()Methode von IronXL wird verwendet, um die Excel-Datei in ein Workbook-Objekt zu laden. - Das erste Arbeitsblatt wird mittels eines Indexes oder Namens ausgewählt.
- Die
ToDataTableMethode wird verwendet, um die Arbeitsblalttdaten in eine DataTable zu konvertieren. - Die gefüllte DataTable wird als Datenquelle für ein DataGridView-Steuerelement im Windows-Formular festgelegt.
Am unteren Rand lädt ein Formular mit einem Button die Excel-Datei in die Anwendung.

Wenn der Benutzer auf die Schaltfläche "Excel laden" klickt, öffnet sich ein Dialog, der es dem Benutzer ermöglicht, eine Datei auszuwählen.

Die ausgewählte Datei wird dann verarbeitet, in eine DataTable konvertiert und in ein DataGridView geladen.

Erfahren Sie mehr über die Verwendung von IronXL mit DataTables.
Abschluss
IronXL ist eines der am häufigsten verwendeten Excel-Add-ons, das nicht von zusätzlichen externen Bibliotheken abhängt. Die Installation von Microsoft Excel ist nicht erforderlich, da es sich um ein eigenständiges Programm handelt. Es kann Excel-Dateien auf verschiedene Weise manipulieren. Im Gegensatz dazu benötigt die Interop-Bibliothek andere Bibliotheken, um Dateien zu parsen und Word-Dokumente zu bearbeiten.
IronXL bietet eine umfassende Lösung für jeden Programmierprozess mit Microsoft Excel-Dokumenten, einschließlich Operationen wie Berechnungen, Sortierung, Zusammenführen und Dateispeicherung. Es erleichtert das Handling von Excel-Daten, das Lesen und Schreiben von Dateien effizienter.
Ursprünglich wurde IronXL zu einem Preis von $999 angeboten. Benutzer können Software-Updates und Support durch Zahlung einer einjährigen Mitgliedsgebühr erhalten. IronXL bietet auch Schutz vor illegaler Weiterverbreitung gegen Gebühr. Klicken Sie hier, um IronXL mit einer kostenlosen Testversion auszuprobieren und detaillierte Preisinformationen zu erhalten. Besuchen Sie die Startseite von Iron Software für weitere Informationen zu anderen Iron Software-Produkten.

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 Handbücher.
Verwandte Artikel



