Jak otworzyć arkusz Excel w C# | IronXL

C# Otwieranie arkuszy Excel za pomocą IronXL

This article was translated from English: Does it need improvement?
Translated
View the article in English

Otwieraj arkusze Excel w C# przy użyciu metod WorkBook.Load() i GetWorkSheet() w IronXL, aby uzyskać dostęp do dowolnego typu pliku Excel (.xls, .csv, .tsv, .xlsx) i czytać lub manipulować danymi za pomocą zaledwie dwóch linii kodu.

Dowiedz się, jak używać C# do otwierania funkcji arkuszy Excel do pracy z arkuszami kalkulacyjnymi i wszystkimi typami plików, w tym .xls, .csv, .tsv i .xlsx. Otwieranie arkusza Excel, odczytywanie danych i manipulowanie nimi programowo jest niezbędne w wielu aplikacjach biznesowych. IronXL zapewnia usprawnione podejście, które eliminuje potrzebę korzystania z Excel Interop, oferując rozwiązanie wymagające mniejszego nakładu kodu i charakteryzujące się krótszym czasem reakcji.

Szybki start: Załaduj skoroszyt i otwórz arkusz w jednej linii

Wystarczy dwa proste wywołania metod, aby załadować dowolny obsługiwany plik Excel i otworzyć nazwany arkusz — bez skomplikowanej konfiguracji czy integracji. IronXL ułatwia natychmiastowe rozpoczęcie odczytu lub edycji danych.

  1. Install IronXL with NuGet Package Manager

    PM > Install-Package IronXL.Excel
  2. Skopiuj i uruchom ten fragment kodu.

    WorkBook wb = WorkBook.Load("sample.xlsx"); WorkSheet ws = wb.GetWorkSheet("Sheet1");
  3. Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronXL w swoim projekcie już dziś z darmową wersją próbną

    arrow pointer



Jak uzyskać dostęp do biblioteki Excel C#?

Uzyskaj dostęp do biblioteki Excel C# poprzez DLL lub zainstaluj ją za pomocą preferowanego menedżera NuGet. Po uzyskaniu dostępu do biblioteki IronXL i dodaniu jej do projektu można korzystać ze wszystkich poniższych funkcji w celu otwierania arkuszy Excel w języku C#. Szczegółowe instrukcje instalacji i wymagania systemowe można znaleźć w dokumentacji IronXL.

Install-Package IronXL.Excel

IronXL obsługuje wdrażanie na wielu platformach, w tym Linux, macOS i kontenerach Docker, dzięki czemu jest wszechstronnym rozwiązaniem dla różnych środowisk programistycznych.


Jak załadować plik Excel?

Użyj funkcji WorkBook.Load() z IronXL, aby ładować pliki Excel do projektu. Ta funkcja wymaga parametru typu string, który jest ścieżką do pliku Excel, który ma zostać otwarty. IronXL obsługuje ładowanie różnych formatów arkuszy kalkulacyjnych, w tym XLS, XLSX, CSV, TSV i innych. Aby uzyskać wyczerpujące wskazówki dotyczące ładowania różnych typów plików, zapoznaj się z samouczkiem dotyczącym ładowania arkuszy kalkulacyjnych.

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-open-excel-worksheet-load-workbook.cs
using IronXL;

// Get a worksheet by its name
WorkSheet workSheet = workBook.GetWorkSheet("SheetName");
Imports IronXL

' Get a worksheet by its name
Dim workSheet As WorkSheet = workBook.GetWorkSheet("SheetName")
$vbLabelText   $csharpLabel

Plik Excel w określonej lokalizacji załaduje się do obiektu workBook. Teraz określ arkusz Excel, który chcesz otworzyć. Parametr WorkBookLoadOptions pozwala na obsługę skoroszytów chronionych hasłem oraz kontroluje zachowanie ponownego obliczania formuł.


Jak otworzyć arkusz kalkulacyjny Excel?

Aby otworzyć określony WorkSheet pliku Excel, IronXL dostarcza funkcję WorkBook.GetWorkSheet(). Użyj go, aby otworzyć arkusz roboczy według jego nazwy:

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-open-excel-worksheet-get-worksheet.cs
// Get a worksheet by its name
WorkSheet workSheet = workBook.GetWorkSheet("SheetName");
' Get a worksheet by its name
Dim workSheet As WorkSheet = workBook.GetWorkSheet("SheetName")
$vbLabelText   $csharpLabel

Określony WorkSheet otworzy się w workSheet ze wszystkimi swoimi danymi. Istnieje kilka innych sposobów na otwarcie określonego WorkSheet pliku Excel:

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-open-excel-worksheet-multiple-open.cs
using IronXL;
using System.Linq;

// Open by sheet index
WorkSheet workSheet = workBook.WorkSheets[0];

// Open the default worksheet
WorkSheet workSheet2 = workBook.DefaultWorkSheet;

// Open the first sheet
WorkSheet workSheet3 = workBook.WorkSheets.First();

// Open the first or default sheet
WorkSheet workSheet4 = workBook.WorkSheets.FirstOrDefault();
Imports IronXL
Imports System.Linq

' Open by sheet index
Private workSheet As WorkSheet = workBook.WorkSheets(0)

' Open the default worksheet
Private workSheet2 As WorkSheet = workBook.DefaultWorkSheet

' Open the first sheet
Private workSheet3 As WorkSheet = workBook.WorkSheets.First()

' Open the first or default sheet
Private workSheet4 As WorkSheet = workBook.WorkSheets.FirstOrDefault()
$vbLabelText   $csharpLabel

W przypadku bardziej zaawansowanych zadań związanych z zarządzaniem arkuszami, takich jak dodawanie, zmiana nazwy lub usuwanie arkuszy, zapoznaj się z przewodnikiem dotyczącym zarządzania arkuszami.

Teraz, pobierz dane z otwartego WorkSheet Excel.


Jak uzyskać dane z arkusza kalkulacyjnego?

Pobierz dane z otwartego WorkSheet Excel w następujący sposób:

  1. Pobierz konkretne wartości komórek arkusza Excel WorkSheet.
  2. Pobierz dane w określonym Range.
  3. Pobierz wszystkie dane z WorkSheet.
  4. Eksportuj dane do innych formatów.

Przyjrzyjmy się, jak pozyskać dane na różne sposoby, korzystając z poniższych przykładów:

Jak uzyskać konkretne wartości komórek?

Pierwsze podejście do pobierania danych z WorkSheet Excel to uzyskanie specyficznych wartości komórek. Dostęp do nich można uzyskać w następujący sposób:

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-open-excel-worksheet-cell-address.cs
// Access a specific cell value by its address
string val = workSheet["Cell Address"].ToString();
' Access a specific cell value by its address
Dim val As String = workSheet("Cell Address").ToString()
$vbLabelText   $csharpLabel

workSheet to WorkSheet pliku Excel, jak pokazano w poniższych przykładach. Dostęp do konkretnych wartości komórek można również uzyskać poprzez określenie indeksu wiersza i indeksu kolumny.

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-open-excel-worksheet-cell-row.cs
// Access a cell value by row index and column index
string val = workSheet.Rows[RowIndex].Columns[ColumnIndex].Value.ToString();
' Access a cell value by row index and column index
Dim val As String = workSheet.Rows(RowIndex).Columns(ColumnIndex).Value.ToString()
$vbLabelText   $csharpLabel

Oto przykład, jak otworzyć plik Excel w projekcie C# i uzyskać konkretne wartości komórek przy użyciu obu metod:

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-open-excel-worksheet-specified-cell.cs
using IronXL;
using System;

WorkBook workBook = WorkBook.Load("sample.xlsx");

// Open WorkSheet
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Get value By Cell Address
int intValue = workSheet["C6"].Int32Value;

// Get value by Row and Column Address
string strValue = workSheet.Rows[3].Columns[1].Value.ToString();

Console.WriteLine("Getting Value by Cell Address: {0}", intValue);
Console.WriteLine("Getting Value by Row and Column Indexes: {0}", strValue);
Imports IronXL
Imports System

Private workBook As WorkBook = WorkBook.Load("sample.xlsx")

' Open WorkSheet
Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")

' Get value By Cell Address
Private intValue As Integer = workSheet("C6").Int32Value

' Get value by Row and Column Address
Private strValue As String = workSheet.Rows(3).Columns(1).Value.ToString()

Console.WriteLine("Getting Value by Cell Address: {0}", intValue)
Console.WriteLine("Getting Value by Row and Column Indexes: {0}", strValue)
$vbLabelText   $csharpLabel

Ten kod wyświetla następujący wynik:

Konsola pokazująca pobieranie danych z arkusza: adres komórki zwraca "Kanada", indeksy wiersza/kolumny zwracają "90540"

Wartość pliku Excel sample.xlsx w komórce row [3].Column [1] i C6:

Arkusz Excel z tabelą danych biznesowych przedstawiającą segmenty, kraje i wartości z zaznaczonymi komórkami

Indeksy wierszy i kolumn zaczynają się od 0.

Otwórz arkusz Excel WorkSheets i uzyskaj konkretne dane komórkowe, możesz również przeczytać więcej na temat czytania danych Excel w C# z już otwartych arkuszy kalkulacyjnych. Aby uzyskać więcej przykładów dotyczących odczytu plików Excel, zapoznaj się z samouczkiem dotyczącym odczytu plików Excel.

Jak uzyskać dane z konkretnego zakresu?

Teraz zbadaj, jak uzyskać dane w określonym zakresie z otwartego WorkSheet Excel przy użyciu IronXL. Funkcjonalnosc wyboru zakresu oferuje potężne opcje wydobywania danych.

IronXL oferuje inteligentny sposob na uzyskanie danych w konkretnym zakresie. Określ from do to wartości:

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-open-excel-worksheet-select-range.cs
// Access data from a specific range
var rangeData = workSheet["From Cell Address : To Cell Address"];
' Access data from a specific range
Dim rangeData = workSheet("From Cell Address : To Cell Address")
$vbLabelText   $csharpLabel

Oto przykład użycia zakresu do uzyskania danych z otwartego WorkSheet Excel:

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-open-excel-worksheet-from-range.cs
using IronXL;
using System;

// Load Excel file
WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Specify the range
foreach (var cell in workSheet["B2:B10"])
{
    Console.WriteLine("Value is: {0}", cell.Text);
}
Imports IronXL
Imports System

' Load Excel file
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")

' Specify the range
For Each cell In workSheet("B2:B10")
    Console.WriteLine("Value is: {0}", cell.Text)
Next
$vbLabelText   $csharpLabel

Powyższy kod pobierze dane z B2 do B10 w następujący sposób:

Konsola pokazuje wydobyte wartosci krajow z arkusza, w tym Kanada, Niemcy, Meksyk, Francja, Stany Zjednoczone.

Wartości pliku Excel sample.xlsx, od B2 do B10:

Arkusz kalkulacyjny Excel z danymi krajow w kolumnie B podswietlonej, pokazujacy segmenty biznesowe i odpowiadające wartosci.

Jak uzyskać dane z wiersza?

Możesz również opisac zakres dla konkretnego wiersza. Na przykład:

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-open-excel-worksheet-select-row-range.cs
var rowData = workSheet["A1:E1"];
Dim rowData = workSheet("A1:E1")
$vbLabelText   $csharpLabel

To wyświetli wszystkie wartości od A1 do E1. Przeczytaj więcej o zakresach Excel w C# i jak pracowac z różnymi identyfikacjami wierszy i kolumn.

Jak uzyskać wszystkie dane z arkusza?

Pobieranie wszystkich danych komórek z otwartego WorkSheet Excel jest łatwe przy użyciu IronXL. Do tego zadania uzyskaj dostep do kazdej wartosci komorki wedlug indeksow wierszy i kolumn. Możesz również eksportowac caly arkusz do różnych formatow, takich jak CSV, JSON lub XML w celu łatwiejszego przetwarzania. Zobacz poniższy przykład, który przechodzi przez wszystkie komórki WorkSheet i uzyskuje ich wartości.

W tym przykładzie dwa pętle działają razem: jedna przechodzi przez każdy wiersz arkusza Excel WorkSheet, a druga przechodzi przez każdą kolumnę w konkretnym wierszu. W ten sposob kazda wartosc komorki jest łatwo dostępna.

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-open-excel-worksheet-all.cs
using IronXL;
using System;
using System.Linq;

// Load Excel file
WorkBook workBook = WorkBook.Load("sample2.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Access all rows of the open Excel WorkSheet
for (int i = 0; i < workSheet.Rows.Count(); i++)
{
    // Access all columns of a specific row
    for (int j = 0; j < workSheet.Columns.Count(); j++)
    {
        // Access each cell for the specified column
        Console.WriteLine(workSheet.Rows[i].Columns[j].Value.ToString());
    }
}
Imports IronXL
Imports System
Imports System.Linq

' Load Excel file
Private workBook As WorkBook = WorkBook.Load("sample2.xlsx")
Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")

' Access all rows of the open Excel WorkSheet
For i As Integer = 0 To workSheet.Rows.Count() - 1
	' Access all columns of a specific row
	For j As Integer = 0 To workSheet.Columns.Count() - 1
		' Access each cell for the specified column
		Console.WriteLine(workSheet.Rows(i).Columns(j).Value.ToString())
	Next j
Next i
$vbLabelText   $csharpLabel

Wynik powyższego kodu wyświetli każdą wartość komórki całkowicie otwartego WorkSheet Excel. Dla pracy z większymi zestawami danych, rozważ użycie funkcjonalności eksportu DataSet i DataTable w IronXL dla lepszej wydajności i zarządzania pamięcią.

Często Zadawane Pytania

Jak otworzyć arkusz Excel w C# bez zainstalowanego Microsoft Office?

IronXL oferuje proste rozwiązanie przy użyciu metod WorkBook.Load() i GetWorkSheet(). Za pomoca zaledwie dwoch linii kodu możesz otwierac dowolne pliki Excel (.xls, .xlsx, .csv, .tsv) bez konieczności używania Excel Interop ani instalacji Microsoft Office na swoim systemie.

Jakie formaty plików sa wspierane przy otwieraniu arkuszy Excel?

IronXL wspiera wiele formatow arkuszy kalkulacyjnych, w tym .xls (starszy format Excel), .xlsx (nowoczesny format Excel), .csv (wartosci oddzielone przecinkami) i .tsv (wartosci oddzielone tabulacja). Funkcja WorkBook.Load() automatycznie obsługuje wszystkie te formaty bezproblemowo.

Czy mogę wdrożyć moja aplikacje do arkuszy Excel na Linuksie lub macOS?

Tak, IronXL wspiera wdrazanie na wielu platformach, w tym Linux, macOS i kontenery Docker. Dzięki temu jest wszechstronny dla różnych środowisk programistycznych oprócz Windows, eliminujac platformowe ograniczenia.

Jak zainstalować biblioteke C# do otwierania plików Excel w moim projekcie?

Możesz uzyskać dostep do IronXL przez pobranie DLL lub zainstalować ja za pomoca menedzera pakietow NuGet. Biblioteka zapewnia szczegółowa dokumentacje dotycząca instrukcji instalacji i wymagań systemowych, aby szybko zaczac prace.

Jakies podstawowe kody do zaladowania pliku Excel i uzyskania dostepu do okreslonego arkusza?

Po prostu uzyj dwoch linii: WorkBook wb = WorkBook.Load("sample.xlsx"); WorkSheet ws = wb.GetWorkSheet("Sheet1"); To laduje twoj plik Excel i otwiera nazwany arkusz do natychmiastowego dostepu do danych i manipulacji nimi.

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
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 2,150,290 | Wersja: 2026.7 właśnie wydany
Still Scrolling Icon

Wciąż przewijasz?

Chcesz szybkiego dowodu? PM > Install-Package IronXL.Excel
uruchom próbkę zobacz, jak Twoje dane stają się arkuszem.