Zum Fußzeileninhalt springen
IRONXL VERWENDEN
Wie man Excel zu DataTable in C# ohne oledb konvertiert | IronXL

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 man Excel in DataTable in C# ohne OLEDB konvertiert

  1. Erstellen Sie ein neues Visual Studio-Projekt.
  2. Installieren Sie die erforderliche Bibliothek.
  3. Laden Sie die Excel-Datei in ein Objekt.
  4. Konvertieren Sie die Excel-Blattdaten mithilfe spezifischer Methoden in eine DataTable.
  5. 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 für .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 Datei und wählen "Neues Projekt" aus. Wählen Sie dann "Windows Forms Application" aus.

Wie man Excel in DataTable in C# ohne OLEDB konvertiert: Abbildung 1

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.

Wie man Excel in DataTable in C# ohne OLEDB konvertiert: Abbildung 2

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

Wie man Excel in DataTable in C# ohne OLEDB konvertiert: Abbildung 3

Fügen Sie als nächstes die erforderliche 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:

Install-Package IronXL.Excel

Wie man Excel in DataTable in C# ohne OLEDB konvertiert: Abbildung 4

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.

Wie man Excel in DataTable in C# ohne OLEDB konvertiert: Abbildung 5

Excel-Datei in Datentabelle konvertieren

Der folgende Code zeigt, wie eine Excel-Datei gelesen und in eine DataTable konvertiert wird, nachdem das Paket installiert wurde.

// 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
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 Namespace
$vbLabelText   $csharpLabel

Im obigen Code:

  • Das Windows-Formular lädt die Excel-Dateien und konvertiert sie in eine neue DataTable.
  • Es verwendet einen offenen Dateidialog, um dem Benutzer die Auswahl einer Excel-Datei zu ermöglichen.
  • 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 ToDataTable-Methode wird verwendet, um die Arbeitsblattdaten in eine DataTable zu verwandeln.
  • 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.

Wie man Excel in DataTable in C# ohne OLEDB konvertiert: Abbildung 6

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

Wie man Excel in DataTable in C# ohne OLEDB konvertiert: Abbildung 7

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

Wie man Excel in DataTable in C# ohne OLEDB konvertiert: Abbildung 8

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 für $799 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. Visit the Iron Software home page for further information on other Iron software products.

Häufig gestellte Fragen

Wie kann ich Excel-Daten in C# in eine DataTable konvertieren, ohne OLEDB zu verwenden?

Um Excel-Daten in C# in eine DataTable zu konvertieren, ohne OLEDB zu verwenden, können Sie die IronXL-Bibliothek verwenden. Richten Sie zuerst ein neues Visual Studio-Projekt ein und installieren Sie IronXL. Laden Sie die Excel-Datei mit der Methode WorkBook.Load(), wählen Sie das Arbeitsblatt aus und verwenden Sie dann die Methode ToDataTable, um die Daten zu konvertieren.

Was ist der Vorteil der Verwendung von IronXL gegenüber Microsoft Interop für Excel-Operationen?

IronXL bietet bessere Leistung, ist ressourcenschonend und vereinfacht die Manipulation von Excel-Dateien. Es erfordert nicht, dass Microsoft Excel installiert ist, was Kompatibilitätsprobleme mit verschiedenen Office-Versionen vermeidet.

Wie installiere ich IronXL in meinem C#-Projekt?

Sie können IronXL in Ihrem C#-Projekt installieren, indem Sie die NuGet-Paket-Manager-Konsole in Visual Studio öffnen und den Befehl Install-Package IronXL ausführen. Alternativ können Sie in den NuGet-Paket-Manager nach IronXL suchen und es direkt installieren.

Ist es notwendig, dass Microsoft Excel installiert ist, um IronXL zu verwenden?

Nein, es ist nicht notwendig, dass Microsoft Excel installiert ist, um IronXL zu verwenden. Diese Bibliothek funktioniert unabhängig von Excel und beseitigt jegliche Abhängigkeit oder Kompatibilitätsprobleme.

Was sind die Vorteile der Konvertierung von Excel in DataTable mit IronXL?

Die Konvertierung von Excel in DataTable mit IronXL bietet hervorragende Leistung, Benutzerfreundlichkeit und erfordert keine zusätzlichen Softwareinstallationen. Diese Methode ermöglicht die effiziente Manipulation von Excel-Dateien in .NET-Anwendungen.

Kann IronXL Excel-Dateien auf verschiedenen Plattformen bearbeiten?

Ja, IronXL ist plattformunabhängig und kann Excel-Dateien in verschiedenen Umgebungen bearbeiten, ohne eine spezielle Version von Microsoft Excel zu benötigen.

Gibt es eine Möglichkeit, IronXL vor dem Kauf auszuprobieren?

Ja, IronXL bietet eine kostenlose Testversion an, mit der Benutzer die Funktionen vor dem Kauf erkunden können. Weitere Informationen und den Download der Testversion finden Sie auf der IronXL-Website.

Welche Projektarten profitieren am meisten von der Verwendung von IronXL?

Projekte, die Excel-Datenmanipulation beinhalten, wie Datenanalyse, Business-Intelligence-Anwendungen und jede .NET-Anwendung, die Excel-Dateibearbeitung erfordert, können von der Verwendung von IronXL erheblich profitieren.

Wie verwaltet IronXL die Manipulation von Excel-Dateien programmatisch?

IronXL ermöglicht es Entwicklern, Excel-Dateien über seine intuitive API programmatisch zu laden, zu lesen und zu manipulieren, ohne auf installierte Excel-Komponenten angewiesen zu sein, was es zu einem effizienten Werkzeug für .NET-Anwendungen macht.

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