IRONSOFTWAREHOME
KORZYSTANIE Z IRONXL

Jak otworzyć pliki Excel w C#

Curtis Chau
Curtis Chau
Updated: 28 czerwca 2026

IronXL umożliwia programistom C# otwieranie, odczytywanie i manipulowanie plikami Excel bez konieczności instalacji Microsoft Office. Wystarczy załadować skoroszyty za pomocą WorkBook.Load(), uzyskać dostęp do arkuszy i odczytać wartości komórek przy użyciu intuicyjnej składni, jak sheet["A1"].

Ten samouczek bada użycie IronXL do otwierania i odczytywania plików Excel w projektach C#, dostarczając początkującym programistom kompleksowych przykładów i najlepszych praktyk dotyczących pracy z danymi Excel.

Czym jest biblioteka IronXL Excel?

IronXL to biblioteka .NET, która kładzie nacisk na łatwość użycia, dokładność i szybkość. Pomaga otwierać, odczytywać, tworzyć i edytować pliki Excel efektywnie, bez konieczności użycia MS Office Interop, co czyni ją praktycznym wyborem dla programistów chcących pracować z Excelem w C# bez Interop.

IronXL is compatible with all .NET Frameworks along with Linux, macOS, Docker, Azure, and AWS. Możesz go używać do tworzenia aplikacji konsolowych, webowych i desktopowych takich jak Blazor i .NET MAUI do nowoczesnych aplikacji webowych. Obsługuje różne formaty skoroszytów, jak pliki XLS i XLSX, XSLT i XLSM, CSV oraz TSV.

Jakie są kluczowe cechy IronXL?

Jak otworzyć plik Excel w C#?

Co jest potrzebne przed rozpoczęciem?

Aby używać IronXL w aplikacjach C#, zainstaluj następujące komponenty na lokalnym komputerze:

  1. Visual Studio - Oficjalne IDE do tworzenia aplikacji C# .NET. Program Visual Studio można pobrać i zainstalować ze strony internetowej firmy Microsoft. Możesz również użyć JetBrains ReSharper & Rider. W celu dodatkowych wskazówek dotyczących konfiguracji, odwiedź Przegląd rozpoczęcia.
  2. IronXL - Biblioteka Excel, która pomaga pracować z arkuszami Excel w C#. Przed użyciem należy zainstalować go w aplikacji C#. Możesz go pobrać ze strony NuGet lub z zarządzania pakietami NuGet w Visual Studio. Możesz również pobrać plik .NET Excel DLL bezpośrednio. W celu wdrożenia licencji, zobacz Używanie kluczy licencyjnych.

Jakie przestrzenie nazw należy importować?

Gdy Visual Studio i IronXL są zainstalowane, dodaj niezbędne przestrzenie nazw IronXL, umieszczając następującą linię na początku pliku C#:

// Add reference to the IronXL library
using IronXL;

Do pracy z określonymi formatami Excel lub zaawansowanymi funkcjami możesz również potrzebować:

using IronXL.Formatting;  // For cell styling
using IronXL.Drawing;     // For images and charts
using System.Data;        // For DataSet/DataTable operations

Jak załadować istniejący plik Excel?

Pliki Excel, znane również jako skoroszyty, składają się z wielu arkuszy, a każdy z nich zawiera wartości komórek. To open and read an Excel file, load it using the WorkBook class's Load method. Funkcjonalność LoadSpreadsheets obsługuje różne formaty.

// Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");

// You can also load from streams for web applications
// using (var stream = File.OpenRead("test.xlsx"))
// {
//     WorkBook workbook = WorkBook.Load(stream);
// }

To inicjalizuje skoroszyt jako instancję WorkBook. Aby otworzyć konkretny WorkSheet, pobierz go z kolekcji WorkSheets. Przewodnik Zarządzaj arkuszem dostarcza więcej szczegółów na temat operacji na arkuszach:

// Access the first worksheet in the workbook
WorkSheet sheet = workbook.WorkSheets.First();

// Alternative ways to access worksheets
WorkSheet sheetByIndex = workbook.WorkSheets[0];  // By index
WorkSheet sheetByName = workbook.GetWorkSheet("Sheet1");  // By name

To uzyskuje dostęp do pierwszego arkusza w pliku Excel, przygotowanego do odczytu i zapisu.

Arkusz Excel pokazujący dane pracowników z kolumnami dla Imię, Stanowisko i Wynagrodzenie dla 5 pracowników z sformatowanymi nagłówkami i obramowaniami komórek Plik Excel

Jak odczytać dane z komórek Excel?

Po otwarciu pliku Excel jest gotowy do odczytu danych. Odczytywanie danych z plików Excel w C# za pomocą IronXL jest proste. Możesz odczytywać wartości komórek, określając odnośnik do komórki przy użyciu funkcji Wybierz Zakres.

Następujący kod pobiera wartość komórki:

// Select the cell using Excel notation and retrieve its integer value
int cellValue = sheet["C2"].IntValue;

// You can also retrieve values in different formats
string textValue = sheet["C2"].StringValue;
decimal decimalValue = sheet["C2"].DecimalValue;
DateTime dateValue = sheet["C2"].DateTimeValue;
bool boolValue = sheet["C2"].BoolValue;

// Display the value in the console
Console.WriteLine($"Cell C2 contains: {cellValue}");

// Check if cell is empty before reading
if (!sheet["C2"].IsEmpty)
{
    Console.WriteLine($"Cell value: {sheet["C2"].Value}");
}

Oto wynik:

Okno Microsoft Visual Studio Debug Console pokazujące pomyślne wyodrębnienie wartości '100000' z komórki Excel C2 z komunikatem wyjściowym kontekstowym Odczytywanie Excela

Aby odczytać dane z zakresu komórek, użyj pętli do iteracji przez określony zakres. Przykład Wybierz zakres Excel dostarcza więcej wzorców:

// Iterate through a range of cells and display their address and text content
foreach (var cell in sheet["A2:A6"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}

// Read an entire column
foreach (var cell in sheet.GetColumn(0))  // Column A
{
    if (!cell.IsEmpty)
    {
        Console.WriteLine($"Column A value: {cell.Text}");
    }
}

// Read an entire row
foreach (var cell in sheet.GetRow(1))  // Row 2
{
    Console.WriteLine($"Row 2 value: {cell.Text}");
}

Każda wartość w zakresie komórek A2:A6 jest dostępna i drukowana na konsoli.

Microsoft Visual Studio Debug Console z podświetlaniem składni pokazująca wyjście z odczytu zakresu Excel A2:A6, wyświetlająca imiona pracowników John, Sara, Peter, Method, oraz Katherine Odczytywanie zakresu komórek

Dla bardziej szczegółowych przykładów odczytu i zapisu sprawdź Samouczek odczytu pliku Excel w C#. Możesz również konwertować dane Excel na DataTables dla łatwiejszej manipulacji:

// Convert worksheet to DataTable for easier data manipulation
DataTable dataTable = sheet.ToDataTable(true);  // true = first row contains headers

// Access data using DataTable methods
foreach (DataRow row in dataTable.Rows)
{
    Console.WriteLine($"Employee: {row["Name"]}, Salary: {row["Salary"]}");
}

Jak mogę stworzyć nowy plik Excel?

IronXL ułatwia również tworzenie nowych skoroszytów do zapisywania i pobierania danych. Przewodnik "Tworzenie arkuszy kalkulacyjnych" zawiera obszerne przykłady.

Możesz utworzyć nowy plik Excel za pomocą jednej linii kodu:

// Create a new workbook with the XLSX format
WorkBook workBook = new WorkBook(ExcelFileFormat.XLSX);

// Alternative: Create with XLS format for compatibility
WorkBook xlsWorkBook = new WorkBook(ExcelFileFormat.XLS);

// Set workbook metadata
workBook.Metadata.Title = "Employee Data";
workBook.Metadata.Author = "Your Name";
workBook.Metadata.Keywords = "employees, salary, data";

Następnie utwórz arkusz roboczy i dodaj do niego dane. Aby uzyskać informacje na temat bardziej zaawansowanych wzorców tworzenia, zobacz sekcję Tworzenie nowego pliku Excel.

Jak dodać arkusze do skoroszytu?

// Create a worksheet named "GDPByCountry" in the workbook
WorkSheet workSheet = workBook.CreateWorkSheet("GDPByCountry");

// Create multiple worksheets at once
WorkSheet sheet2 = workBook.CreateWorkSheet("PopulationData");
WorkSheet sheet3 = workBook.CreateWorkSheet("Summary");

// Copy an existing worksheet
WorkSheet copiedSheet = workSheet.CopySheet("GDPByCountryCopy");

Ten kod dodaje do skoroszytu arkusz o nazwie "GDPByCountry", umożliwiający dodawanie wartości do komórek. Dowiedz się więcej o zarządzaniu arkuszami i kopiowaniu arkuszy.

Aby ustawić wartość dla konkretnej komórki, użyj poniższego kodu:

// Set the value of cell A1 to "Example"
workSheet["A1"].Value = "Example";

// Add different types of data
workSheet["A2"].Value = 12345;  // Integer
workSheet["A3"].Value = 99.99m;  // Decimal
workSheet["A4"].Value = DateTime.Now;  // Date
workSheet["A5"].Value = true;  // Boolean

// Add formulas
workSheet["B1"].Formula = "=SUM(A2:A3)";

// Set multiple cells at once using a range
workSheet["C1:C5"].Value = "Bulk Value";

// Save the workbook
workBook.SaveAs("output.xlsx");

Ostateczny wynik to:

Arkusz Excel pokazujący komórkę A1 wypełnioną tekstem 'Example' programowo dodanym przy użyciu C#, z widoczną zakładką arkusza GDPByCountry i podświetloną komórką, aby pokazać dodaną wartość Dodaj wartość do komórki

Praca z różnymi formatami plików Excel

IronXL obsługuje wiele formatów Excel. Oto jak postępować z różnymi typami plików:

// Convert between formats
WorkBook workbook = WorkBook.Load("data.csv");
workbook.SaveAs("data.xlsx");  // Convert CSV to XLSX

// Export to different formats
workbook.SaveAsCsv("output.csv", ";");  // CSV with semicolon delimiter
workbook.SaveAsJson("output.json");     // Export as JSON
workbook.SaveAsXml("output.xml");       // Export as XML

Dowiedz się więcej o konwersji typów plików arkuszy kalkulacyjnych oraz konwersji plików XLSX do formatów CSV, JSON i XML.

Obsługa błędów i najlepsze praktyki

Podczas pracy z plikami Excel należy zapewnić odpowiednią obsługę błędów:

try
{
    WorkBook workbook = WorkBook.Load("test.xlsx");
    WorkSheet sheet = workbook.GetWorkSheet("Sheet1");
    
    // Check if sheet exists
    if (sheet == null)
    {
        Console.WriteLine("Worksheet not found!");
        return;
    }
    
    // Process data
    var value = sheet["A1"].Value;
}
catch (Exception ex)
{
    Console.WriteLine($"Error reading Excel file: {ex.Message}");
}

W przypadku aplikacji produkcyjnych warto rozważyć skonfigurowanie logowania i wdrożenie odpowiednich wzorców obsługi błędów.

Czego się nauczyliśmy?

W tym artykułe pokazano, jak otwierać i odczytywać pliki Excel, takie jak XLS i XLSX, w języku C# przy użyciu biblioteki IronXL. IronXL nie wymaga instalacji programu Microsoft Excel w systemie do wykonywania zadań związanych z Excelem, dzięki czemu idealnie nadaje się do wdrożeń w Dockerze i Azure Functions.

IronXL zapewnia kompleksowe rozwiązanie do programowego wykonywania zadań związanych z programem Excel, w tym obliczania formuł, sortowania ciągów znaków, przycinania, wyszukiwania i zamiany, scałania i rozdzielania, zapisywania plików i wielu innych. Można również ustawić formaty danych w komórkach, korzystać z formatowania warunkowego oraz tworzyć wykresy.

Aby poznać zaawansowane funkcje, zapoznaj się z grupowaniem i rozgrupowywaniem, nazwanymi zakresami, hiperłączami oraz zabezpieczaniem plików Excel. Pełna dokumentacja API zawiera szczegółowe informacje na temat wszystkich funkcji.

IronXL jest dostępny w ramach bezpłatnego 30-dniowego okresu próbnego i można uzyskać licencję na jego komercyjne wykorzystanie. Pakiet Lite IronXL zaczyna się od $999. Aby uzyskać dodatkowe zasoby, odwiedź sekcję samouczków lub zapoznaj się z przykładami kodu dla typowych scenariuszy.

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ęczników.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta