Przejdź do treści stopki
KORZYSTANIE Z IRONXL

Jak pobierać dane z arkusza Excel w C#

IronXL to bogate w funkcje API, które zapewnia różnorodne funkcje do pracy z plikami Excel w C#. Ten samouczek omówi, jak pobrać dane z arkuszy Excel w C# przy użyciu IronXL.

Aby śledzić ten samouczek, potrzebujesz:

  • Zainstalowanego Microsoft Visual Studio na swoim komputerze
  • Podstawowej znajomości programowania w C#
  • Zainstalowanej biblioteki IronXL w twoim projekcie

Możesz pobrać IronXL z oficjalnej strony internetowej lub poprzez Menedżera pakietów NuGet w Visual Studio.

Installing IronXL in Visual Studio

Aby zainstalować IronXL w projekcie C#, wykonaj następujące kroki:

  1. Open Microsoft Visual Studio.
  2. Utwórz nowy projekt lub otwórz istniejący projekt.
  3. Kliknij prawym przyciskiem myszy na projekt w Eksploratorze rozwiązań i wybierz "Zarządzaj pakietami NuGet".
  4. W oknie "Menedżer pakietów NuGet" wybierz kartę "Przeglądaj".
  5. W polu wyszukiwania wpisz "IronXL" i naciśnij Enter.
  6. Wybierz "IronXL.Excel" i kliknij przycisk "Zainstaluj".
  7. Kliknij przycisk "Akceptuję", aby zaakceptować umowę licencyjną.
  8. Poczekaj na zakończenie instalacji.

Jak pobrać dane z arkusza Excel w C#, Rysunek 1: Instalowanie biblioteki IronXL w projekcie Visual Studio Instalacja biblioteki IronXL w projekcie Visual Studio

Po wykonaniu tych kroków IronXL powinien być zainstalowany i gotowy do użycia w Twoim projekcie C#.

Krok 1: Importowanie wymaganych bibliotek

Dodaj poniższy przykład kodu, aby zaimportować bibliotekę IronXL i inne niezbędne biblioteki.

using IronXL;
using System;
using System.Data;
using System.Data.OleDb;
using System.Windows.Forms;
using IronXL;
using System;
using System.Data;
using System.Data.OleDb;
using System.Windows.Forms;
Imports IronXL
Imports System
Imports System.Data
Imports System.Data.OleDb
Imports System.Windows.Forms
$vbLabelText   $csharpLabel

Używanie przestrzeni nazw IronXL zapewnia wszystkie niezbędne klasy i funkcje do pracy z plikami Excel, używając biblioteki IronXL.

Krok 2: Załaduj plik Excel

Pierwszym krokiem jest załadowanie pliku. IronXL udostępnia klasę WorkBook do ładowania pliku Excel. Możemy użyć klasy WorkBook do otwarcia istniejącego pliku Excel lub utworzenia nowego skoroszytu.

Aby załadować istniejący plik Excel, użyj następującego kodu:

WorkBook workbook = WorkBook.Load("path/to/excel/file.xlsx");
WorkBook workbook = WorkBook.Load("path/to/excel/file.xlsx");
Dim workbook As WorkBook = WorkBook.Load("path/to/excel/file.xlsx")
$vbLabelText   $csharpLabel

Ten kod ładuje określony plik Excel do obiektu WorkBook.

Aby utworzyć nowy WorkBook, użyj poniższego przykładowego kodu:

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
$vbLabelText   $csharpLabel

Ten kod tworzy nowy skoroszyt w określonym formacie pliku (tutaj, XLSX).

Jak pobrać dane z arkusza Excel w C#, Rysunek 3: IronXL może ładować i tworzyć arkusze Excel w formatach plików .XLS i .XLSX IronXL może ładować i tworzyć arkusze kalkulacyjne Excel w formatach .XLS i .XLSX

Krok 3: Pobierz arkusz Excel

Po załadowaniu pliku Excel należy wskazać arkusz Excel, z którego należy pobrać dane. Obiekt WorkBook może zawierać wiele obiektów WorkSheet. Każdy WorkSheet musi określić nazwę arkusza przed uzyskaniem dostępu do danych.

WorkSheet worksheet = workbook.WorkSheets["Sheet1"];
WorkSheet worksheet = workbook.WorkSheets["Sheet1"];
Dim worksheet As WorkSheet = workbook.WorkSheets("Sheet1")
$vbLabelText   $csharpLabel

Ten kod pobiera pierwszy arkusz (z nazwą arkusza Sheet1) z zeszytu. Jeśli chcesz pobrać arkusz według indeksu, możesz użyć następującego kodu:

WorkSheet worksheet = workbook.WorkSheets[0];
WorkSheet worksheet = workbook.WorkSheets[0];
Dim worksheet As WorkSheet = workbook.WorkSheets(0)
$vbLabelText   $csharpLabel

Ten kod pobiera pierwszy arkusz z zeszytu, zakładając, że istnieje.

Krok 4: Pobierz dane z arkusza Excel

Z pobranego arkusza Excel możliwe jest uzyskanie dostępu do danych. IronXL oferuje różne metody pobierania danych z arkusza Excel. Oto niektóre z najczęściej używanych metod:

  • Operator indeksowania []: Pobiera wartość pojedynczej komórki.
  • GetRow: Retrieves a single row of data.
  • GetColumn: Retrieves a single column of data.
  • GetRange: Retrieves a range of cells.

Aby pobrać wartość pojedynczej komórki, użyj następującego kodu:

object value = worksheet["A1"].Value;
object value = worksheet["A1"].Value;
Dim value As Object = worksheet("A1").Value
$vbLabelText   $csharpLabel

Ten kod pobiera wartość komórki A1 w arkuszu.

Aby pobrać pojedynczy wiersz danych, użyj następującego kodu:

var dataRow = worksheet.GetRow(1);
var dataRow = worksheet.GetRow(1);
Dim dataRow = worksheet.GetRow(1)
$vbLabelText   $csharpLabel

Ten kod pobiera pierwszy wiersz danych w arkuszu.

Aby pobrać pojedynczą kolumnę danych, użyj następującego kodu:

var dataColumn = worksheet.GetColumn(1);
var dataColumn = worksheet.GetColumn(1);
Dim dataColumn = worksheet.GetColumn(1)
$vbLabelText   $csharpLabel

Ten kod pobiera pierwszą kolumnę danych w arkuszu.

Aby pobrać zakres komórek, użyj następującego kodu:

var cellRange = worksheet.GetRange("A1:B2");
var cellRange = worksheet.GetRange("A1:B2");
Dim cellRange = worksheet.GetRange("A1:B2")
$vbLabelText   $csharpLabel

Ten kod pobiera zakres komórek od A1 do B2 w arkuszu.

Krok 5: Wyodrębnij dane z arkusza Excel

Aby wyodrębnić pojedynczą wartość z pobranych danych, należy ją rzutować na odpowiedni typ danych.

Poniższy kod pokazuje, jak wyodrębnić wartość całkowitą z komórki A1:

int value = worksheet["A1"].IntValue;
int value = worksheet["A1"].IntValue;
Dim value As Integer = worksheet("A1").IntValue
$vbLabelText   $csharpLabel

Poniższy kod można użyć do wyodrębnienia wiersza danych:

var dataRow = worksheet.GetRow(1);
var values = dataRow.Values;

foreach (var value in values)
{
    int intValue = (int)value;
    // Do something with the extracted value
}
var dataRow = worksheet.GetRow(1);
var values = dataRow.Values;

foreach (var value in values)
{
    int intValue = (int)value;
    // Do something with the extracted value
}
Dim dataRow = worksheet.GetRow(1)
Dim values = dataRow.Values

For Each value In values
	Dim intValue As Integer = CInt(value)
	' Do something with the extracted value
Next value
$vbLabelText   $csharpLabel

Ten kod wyodrębnia pierwszy wiersz danych i iteruje przez wartości w wierszu, rzutując każdą wartość na liczbę całkowitą.

Następnie, następujący kod pokazuje, jak wyodrębnić kolumnę danych:

var dataColumn = worksheet.GetColumn(1);
var values = dataColumn.Values;

foreach (var value in values)
{
    string strValue = (string)value;
    // Do something with the extracted value
}
var dataColumn = worksheet.GetColumn(1);
var values = dataColumn.Values;

foreach (var value in values)
{
    string strValue = (string)value;
    // Do something with the extracted value
}
Dim dataColumn = worksheet.GetColumn(1)
Dim values = dataColumn.Values

For Each value In values
	Dim strValue As String = CStr(value)
	' Do something with the extracted value
Next value
$vbLabelText   $csharpLabel

Ten kod wyodrębnia pierwszą kolumnę danych i iteruje przez wartości w kolumnie, rzutując każdą wartość na ciąg znaków.

Następny przykład demonstruje, jak wyodrębnić zakres komórek:

var cellRange = worksheet.GetRange("A1:B2");
var values = cellRange.Values;

foreach (var row in values)
{
    foreach (var value in row)
    {
        // Do something with the extracted value
    }
}
var cellRange = worksheet.GetRange("A1:B2");
var values = cellRange.Values;

foreach (var row in values)
{
    foreach (var value in row)
    {
        // Do something with the extracted value
    }
}
Dim cellRange = worksheet.GetRange("A1:B2")
Dim values = cellRange.Values

For Each row In values
	For Each value In row
		' Do something with the extracted value
	Next value
Next row
$vbLabelText   $csharpLabel

Ten kod wyodrębnia zakres komórek od A1 do B2 i iteruje przez wartości w każdej komórce.

Wnioski

Ten samouczek omówił, jak pobierać dane z arkuszy Excel w C# za pomocą IronXL, a także ładować plik Excel, pobierać wymagany arkusz, pobierać dane z arkusza, wyodrębniać dane i importować je do bazy danych. IronXL zapewnia bogate w funkcje API do pracy z plikami Excel, ułatwiając integrację danych Excel z aplikacjami C#. Z IronXL możemy czytać i zapisywać pliki Excel oraz programowo oddziaływać z ich danymi. Dodatkowo, możemy używać IronXL do automatyzacji zadań Excel, takich jak generowanie raportów, tworzenie wykresów i formatowanie komórek.

Więcej o IronXL

IronXL to przyjazna dla użytkownika i wygodna biblioteka do odczytu i zapisu do plików Excel i CSV, z małymi i łatwo zapamiętywalnymi funkcjami.

Ten samouczek jedynie dotknął powierzchni tego, co IronXL potrafi robić. IronXL oferuje szeroki zakres dodatkowych funkcji, takich jak formatowanie komórek, funkcje matematyczne, i formatowanie warunkowe, aby wymienić tylko kilka.

Znaczne korzyści z używania IronXL

  • Dedykowane wsparcie od inżynierów .NET, wsparcie międzyplatformowe, Azure, AWS i Docker.
  • Prosta instalacja przez Microsoft Visual Studio
  • Bezpłatna wersja próbna dla rozwoju, licencje zaczynają się od $999
  • Łatwa integracja z projektami C# lub VB.NET

Często Zadawane Pytania

Jak mogę przekonwertować HTML na PDF w języku C#?

Możesz użyć metody RenderHtmlAsPdf biblioteki IronPDF do konwersji ciągów HTML na pliki PDF. Możesz również konwertować pliki HTML na pliki PDF za pomocą metody RenderHtmlFileAsPdf.

Jak pobrać dane z arkusza Excel w języku C# bez użycia Interop?

Możesz użyć IronXL do pobierania danych z arkuszy Excel w języku C#, ładując plik Excel za pomocą klasy WorkBook i uzyskując dostęp do danych przy użyciu metod takich jak GetRow(), GetColumn() i GetRange().

Jakie są wymagania wstępne dotyczące korzystania z IronXL do manipulowania plikami Excel w języku C#?

Aby manipulować plikami Excel w języku C#, potrzebujesz programu Microsoft Visual Studio, podstawowej wiedzy z zakresu programowania w języku C# oraz biblioteki IronXL zainstalowanej za pośrednictwem menedżera pakietów NuGet.

Jak zainstalować IronXL w moim projekcie Visual Studio?

Aby zainstalować IronXL, otwórz Visual Studio, kliknij prawym przyciskiem myszy swój projekt w Solution Explorer, wybierz „Zarządzaj pakietami NuGet” i wyszukaj „IronXL” w zakładce Przeglądaj. Kliknij „Zainstaluj”, aby dodać go do swojego projektu.

Jak załadować plik Excel za pomocą IronXL?

Użyj klasy WorkBook, aby załadować plik Excel. Na przykład: WorkBook workbook = WorkBook.Load("ścieżka/do/pliku/excel.xlsx");

Jak mogę pobrać konkretny arkusz z skoroszytu za pomocą IronXL?

Arkusz roboczy można pobrać, używając jego nazwy: WorkSheet worksheet = workbook.WorkSheets["Sheet1"]; lub indeksu: WorkSheet worksheet = workbook.WorkSheets[0];

Jak wyodrębnić dane z komórki za pomocą IronXL?

Użyj indeksu komórki, aby pobrać jej wartość, np. object value = worksheet["A1"].Value; i przekonwertuj ją na odpowiedni typ danych.

Czy IronXL obsługuje zarówno formaty plików .XLS, jak i .XLSX?

Tak, IronXL może wczytywać i tworzyć arkusze kalkulacyjne Excel zarówno w formacie .XLS, jak i .XLSX.

Jak wyodrębnić zakres komórek za pomocą IronXL?

Aby wyodrębnić zakres komórek, użyj var cellRange = worksheet.GetRange("A1:B2"); i przejdź przez wartości.

Jakie są zalety korzystania z IronXL?

IronXL oferuje dedykowane wsparcie inżynierów .NET, obsługę wielu platform, prostą instalację za pośrednictwem Visual Studio, bezpłatną wersję próbną oraz łatwą integrację z projektami C# lub VB.NET.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej

Zespół wsparcia Iron

Jesteśmy online 24 godziny, 5 dni w tygodniu.
Czat
E-mail
Zadzwoń do mnie