Przejdź do treści stopki
KORZYSTANIE Z IRONXL

Jak konwertować Excel na DataGridView w C#

Funkcje biblioteki IronXL

Korzystając z biblioteki IronXL w języku C#, można łatwo odczytywać i konwertować dokumenty Microsoft Excel do plików CSV. Biblioteka IronXL to samodzielna biblioteka oprogramowania .NET, która może odczytywać różne formaty arkuszy kalkulacyjnych bez konieczności instalacji programu Microsoft Excel lub korzystania z interfejsu Microsoft Office Interop Excel.

IronXL to jedna z wiodących bibliotek arkuszy kalkulacyjnych Excel dla języka C#, kompatybilna zarówno z .NET Core, jak i .NET Framework. Obsługuje różne platformy .NET Framework, w tym aplikacje internetowe, aplikacje Windows Forms oraz aplikacje konsolowe. Odczytywanie plików Excel jest szybkie i proste dzięki IronXL. Obsługuje szeroki zakres formatów plików Excel, w tym XLSX, XLS, CSV, TSV, XLST, XLSM i inne. Można importować, edytować i eksportować tabele danych, eksportować zbiory danych oraz wykonywać wiele innych operacji. Możliwe jest również eksportowanie i zapisywanie plików o różnych rozszerzeniach.

Dzięki intuicyjnemu interfejsowi API C# biblioteki IronXL można bez wysiłku odczytywać, modyfikować i tworzyć pliki arkuszy kalkulacyjnych Excel w środowisku .NET. Zapewnia kompleksową obsługę platform .NET Core, .NET Framework, Xamarin, Mobile, Linux, macOS oraz Azure.

IronXL może wykonywać obliczenia podobnie jak Microsoft Excel i obsługuje kilka formatów danych w kolumnach, takich jak tekst, liczby całkowite, formuły, daty, waluty i wartości procentowe.

Aby dowiedzieć się więcej, kliknij na stronę internetową IronXL.

Tworzenie nowego projektu w Visual Studio

Przed użyciem frameworka IronXL należy utworzyć projekt .NET w programie Visual Studio. Działa z każdą wersją Visual Studio; zaleca się jednak korzystanie z najnowszej wersji. W zależności od wymagań można tworzyć różne szablony projektów lub aplikacje podobne do Windows Forms. W tym samouczku, aby uprościć sprawę, wykorzystamy aplikację Windows Forms.

Jak przekonwertować plik Excel do widoku Datagridview w języku C#, rysunek 1: Utwórz nowy projekt w Visual Studio

Utwórz nowy projekt w Visual Studio

Po wybraniu szablonu projektu podaj nazwę i lokalizację projektu.

Jak przekonwertować plik Excel do widoku Datagridview w języku C#, rysunek 2: Konfiguracja projektu

Skonfiguruj projekt

Następnie wybierz następującą strukturę. W projekcie tym zostanie wykorzystana platforma .NET Framework 4.7.

Jak przekonwertować Excel do Datagridview w C#, rysunek 3: Wybór .NET Framework

Wybór platformy .NET Framework

Po wygenerowaniu plików projektu można otworzyć plik Form1.cs w widoku projektanta, aby wstawić kod programu, zaprojektować interfejs oraz skompilować i uruchomić program. Następnie należy pobrać bibliotekę IronXL wymagańą dla tego rozwiązania. Pakiet można pobrać, używając następującego polecenia w menedżerze pakietów:

Install-Package IronXl.Excel

Jak przekonwertować Excel do Datagridview w C#, rysunek 4: Zainstaluj pakiet IronXL w konsoli menedżera pakietów

Zainstaluj pakiet IronXL w konsoli menedżera pakietów

Alternatywnie można użyć menedżera pakietów NuGet, aby wyszukać i pobrać pakiet "IronXL". Menedżer pakietów NuGet zapewnia wygodny sposób zarządzania zależnościami w projekcie.

Jak przekonwertować plik Excel do widoku Datagridview w języku C#, rysunek 5: Wyszukaj i zainstaluj pakiet IronXL w interfejsie użytkownika menedżera pakietów NuGet

Wyszukaj i zainstaluj pakiet IronXL w interfejsie użytkownika NuGet Package Manager

W tym formularzu umieszczono kontrolkę DataGridView, która służy do wczytania niezbędnego pliku Excel do kontrolki DataGridView.

Ładowanie danych z pliku Excel

Biblioteka IronXL to potężna biblioteka dla programu Excel, która pozwala odczytywać pliki Excel za pomocą zaledwie kilku linii kodu. Poniżej znajduje się przykładowy fragment kodu, który pokazuje, jak zaimportować dane z Excela do DataGridView:

using System;
using System.Windows.Forms;
using IronXL;

namespace DataTableWindowsForm
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string importFilePath = string.Empty;

            openFileDialog1.Filter = "Excel (*.xlsx)|*.xlsx";
            DialogResult result = openFileDialog1.ShowDialog();

            // Check if the user selected a file
            if (result == DialogResult.OK)
            {
                importFilePath = openFileDialog1.FileName;
            }

            // Proceed if the file path is not empty
            if (!string.IsNullOrEmpty(importFilePath))
            {
                // Load the Excel document
                WorkBook excelDoc = WorkBook.Load(importFilePath);

                // Convert the first sheet to a DataTable
                var dataTable = excelDoc.WorkSheets[0].ToDataTable();

                // Set the DataSource of dataGridView1 to the DataTable
                dataGridView1.DataSource = dataTable;
            }
        }
    }
}
using System;
using System.Windows.Forms;
using IronXL;

namespace DataTableWindowsForm
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string importFilePath = string.Empty;

            openFileDialog1.Filter = "Excel (*.xlsx)|*.xlsx";
            DialogResult result = openFileDialog1.ShowDialog();

            // Check if the user selected a file
            if (result == DialogResult.OK)
            {
                importFilePath = openFileDialog1.FileName;
            }

            // Proceed if the file path is not empty
            if (!string.IsNullOrEmpty(importFilePath))
            {
                // Load the Excel document
                WorkBook excelDoc = WorkBook.Load(importFilePath);

                // Convert the first sheet to a DataTable
                var dataTable = excelDoc.WorkSheets[0].ToDataTable();

                // Set the DataSource of dataGridView1 to the DataTable
                dataGridView1.DataSource = dataTable;
            }
        }
    }
}
Imports System
Imports System.Windows.Forms
Imports IronXL

Namespace DataTableWindowsForm
	Partial Public Class Form1
		Inherits Form

		Public Sub New()
			InitializeComponent()
		End Sub

		Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
			Dim importFilePath As String = String.Empty

			openFileDialog1.Filter = "Excel (*.xlsx)|*.xlsx"
			Dim result As DialogResult = openFileDialog1.ShowDialog()

			' Check if the user selected a file
			If result = System.Windows.Forms.DialogResult.OK Then
				importFilePath = openFileDialog1.FileName
			End If

			' Proceed if the file path is not empty
			If Not String.IsNullOrEmpty(importFilePath) Then
				' Load the Excel document
				Dim excelDoc As WorkBook = WorkBook.Load(importFilePath)

				' Convert the first sheet to a DataTable
				Dim dataTable = excelDoc.WorkSheets(0).ToDataTable()

				' Set the DataSource of dataGridView1 to the DataTable
				dataGridView1.DataSource = dataTable
			End If
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Powyższy kod importuje dane z programu Excel. Aby zapewnić więcej kontekstu, załóżmy, że projektujemy aplikację Windows Forms z kontrolką DataGridView i przyciskiem. Przycisk otworzy okno dialogowe, w którym można wyszukać plik Excel w określonej lokalizacji. Dodano niestandardowy kod, aby filtrować i wyświetlać tylko ograniczoną liczbę plików o określonym rozszerzeniu.

Jak przekonwertować plik Excel do widoku Datagridview w języku C#, rysunek 6: Otwórz okno dialogowe, aby wybrać plik Excel

Otwórz okno dialogowe, aby wybrać plik Excel

Następnie do wczytania danych z pliku Excel używana jest metoda Load. Metoda ta umożliwia wczytywanie danych z różnych źródeł, takich jak nazwy plików, bajty lub strumienie. Jeśli plik Excel jest chroniony hasłem, można również przekazać hasło jako parametr.

Po załadowaniu danych z arkusza Excel do obiektu IronXL używana jest metoda ToDataTable w celu konwersji danych arkusza Excel do formatu DataTable. Każdy arkusz w pliku Excel zostanie przekształcony w oddzielną tabelę.

Następnie załaduj wymagańą tabelę z zestawu danych do DataGridView. W tym celu właściwość DataGridView obiektu DataSource jest ustawiana na nowo utworzony obiekt DataTable z biblioteki IronXL. Ten krok umożliwia wprowadzenie danych z pliku Excel do DataGridView.

Jak przekonwertować plik Excel do widoku Datagridview w języku C#, rysunek 7: Wyświetlanie danych z pliku Excel

Wyświetl dane z pliku Excel

Dodatkowo może być konieczne skonfigurowanie DataGridView, aby poprawnie wyświetlało nagłówki i pierwszy wiersz danych, w zależności od konkretnych wymagań.

Aby uzyskać więcej samouczków dotyczących korzystania z IronXL, kliknij ten przewodnik.

Wnioski

IronXL to bardzo popularne narzędzie do obsługi programu Excel, które nie opiera się na zewnętrznych bibliotekach. Jest to niezależne rozwiązanie i nie wymaga instalacji programu Microsoft Excel. Jest kompatybilny z różnymi platformami.

Dzięki IronXL można programowo wykonywać szeroki zakres operacji związanych z dokumentami Microsoft Excel. Możesz wykonywać takie zadania, jak sortowanie ciągów znaków lub liczb, przycinanie i dodawanie danych, wyszukiwanie i zamiana wartości, scałanie i rozdzielanie komórek, zapisywanie plików i wiele innych. Pozwala również na walidację danych w arkuszach kalkulacyjnych oraz definiowanie typów danych komórek. Ponadto IronXL obsługuje odczyt i zapis plików CSV.

IronXL jest dostępny w sprzedaży z różnymi opcjami licencyjnymi. Klienci mają również możliwość opłacenia rocznej opłaty członkowskiej w celu uzyskania dostępu do aktualizacji i wsparcia technicznego. Za dodatkową opłatą IronXL zapewnia nieograniczone prawa do redystrybucji. Aby uzyskać bardziej szczegółowe informacje na temat cen, można odwiedzić stronę poświęconą licencjom.

Często Zadawane Pytania

Jak wyświetlić dane z Excela w DataGridView w języku C# bez użycia Interop?

Możesz użyć IronXL do odczytu danych z Excela i wyświetlenia ich w DataGridView poprzez konwersję arkusza Excela na DataTable i ustawienie go jako źródła danych dla DataGridView.

Jakie są zalety korzystania z IronXL do operacji w Excelu w języku C#?

IronXL oferuje samodzielne rozwiązanie do operacji w Excelu bez konieczności korzystania z programu Microsoft Excel lub Office Interop. Obsługuje wiele platform i formatów, dzięki czemu jest wszechstronnym narzędziem dla różnych aplikacji napisanych w języku C#.

Jak zainstalować IronXL w projekcie Visual Studio do obsługi programu Excel?

Zainstaluj IronXL, uruchamiając polecenie Install-Package IronXl.Excel w konsoli menedżera pakietów lub korzystając z interfejsu użytkownika menedżera pakietów NuGet w programie Visual Studio.

Czy IronXL obsługuje odczyt i zapis w różnych formatach plików Excel?

Tak, IronXL obsługuje odczyt i zapis w różnych formatach plików Excel, w tym XLSX, XLS, CSV i TSV.

Czy IronXL może być używany w aplikacjach wieloplatformowych?

Tak, IronXL jest kompatybilny z .NET Core, .NET Framework, Xamarin i innymi platformami, dzięki czemu nadaje się do aplikacji wieloplatformowych.

Jak wygląda proces konwersji danych z Excela do tabeli danych (DataTable) przy użyciu IronXL?

Aby przekonwertować dane z Excela do tabeli danych (DataTable) przy użyciu IronXL, należy wczytać plik Excel do obiektu WorkBook, uzyskać dostęp do żądanego arkusza i użyć metod IronXL do wyodrębnienia danych do tabeli danych (DataTable).

Czy IronXL jest opłacalnym rozwiązaniem do manipulacji danymi programu Excel w języku C#?

IronXL oferuje elastyczne opcje licencyjne, w tym roczne członkostwo i prawa do redystrybucji, co czyni go opłacalnym rozwiązaniem do manipulacji danymi Excel w języku C#.

Jakie operacje może wykonywać IronXL na plikach Excel?

IronXL może wykonywać różne operacje, takie jak odczytywanie, zapisywanie, sortowanie, przycinanie i scalanie komórek, a także obsługiwać obliczenia i formatowanie podobne do programu Microsoft Excel.

W jaki sposób IronXL obsługuje dane z Excela w interfejsach użytkownika?

IronXL może ładować dane Excel z różnych źródeł i konwertować je do tabeli danych (DataTable), ułatwiając płynną integrację z interfejsami użytkownika, takimi jak DataGridView w aplikacjach Windows Forms.

Gdzie mogę znaleźć więcej zasobów dotyczących korzystania z IronXL do operacji w programie Excel?

Więcej samouczków i zasobów dotyczących korzystania z IronXL można znaleźć na stronie internetowej IronXL, w tym poradniki i szczegółową dokumentację.

Jordi Bardia
Inżynier oprogramowania
Jordi jest najbardziej biegły w Pythonie, C# i C++. Kiedy nie wykorzystuje swoich umiejętności w Iron Software, programuje gry. Dzieląc odpowiedzialność za testowanie produktów, rozwój produktów i badania, Jordi wnosi ogromną wartość do ciągłej poprawy produktów. Różnorodne doświadczenia ...
Czytaj więcej

Zespol wsparcia Iron

Jestesmy online 24 godziny, 5 dni w tygodniu.
Czat
Email
Zadzwon do mnie