Jak edytować plik Excel w języku C#

Edycja pliku Excel w C

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

Edytuj pliki Excel w C# za pomocą biblioteki IronXL, który dostarcza proste metody do modyfikowania komórek, wierszy, kolumn i arkuszy kalkulacyjnych programowo bez Excel Interop, zmniejszając błędy i złożoność.

Programiści potrzebują precyzji przy modyfikowaniu plików Excel w C#, ponieważ jeden błąd może uszkodzić całe dokumenty. Prosty, efektywny kod zmniejsza ryzyko błędów i upraszcza programistyczną edycję lub usuwanie plików Excel. IronXL zapewnia kompleksowe rozwiązanie do pracy z plikami Excel w C#, które eliminuje zależności od Microsoft Office. Ten przewodnik obejmuje kroki do prawidłowej i szybkiej edycji plików Excel w C# za pomocą przetestowanych funkcji.

Quickstart: Edytuj wartość konkretnej komórki za pomocą IronXL

Ten przykład pokazuje, jak załadować istniejący plik Excel, zaktualizować pojedynczą komórkę i zapisać zmiany z wykorzystaniem IronXL. Rozpocznij w mniej niż 5 liniach, bez potrzeby Interop. Dla skomplikowanych operacji, zapoznaj się z naszą pełną dokumentacją API.

  1. Install IronXL with NuGet Package Manager

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

    IronXl.WorkBook.Load("file.xlsx").GetWorkSheet("Sheet1")["C3"].Value = "Hello IronXL";
    // then save your workbook
    iroExcelWorkBook.SaveAs("file.xlsx");
  3. Wdrożenie do testowania w środowisku produkcyjnym

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

    arrow pointer

Krok 1

Jak skonfigurować IronXL do edycji Excel w C#?

Ten tutorial używa IronXL, biblioteki Excel dla C#. Pobierz i zainstaluj ją w swoim projekcie (darmowy dla deweloperów), aby używać tych funkcji. IronXL wspiera różne platformy, w tym Linux i macOS, co czyni go wszechstronnym dla rozwoju międzyplatformowego.

You can either Download IronXL.zip or read more and install via the NuGet package page.

Po zainstalowaniu, zaczynajmy. Nowy w IronXL? Sprawdź nasz przegląd Wprowadzenia dla pełnego wprowadzenia.


Install-Package IronXl.Excel

Zastąp x.x.x odpowiednim numerem wersji w razie potrzeby.


Poradnik "Jak to zrobić"

Jak edytować konkretne wartości komórek w Excelu?

Najpierw naucz się, jak edytować konkretne wartości komórek w arkuszu kalkulacyjnym Excel. Jest to jedna z najczęstszych operacji przy edycji plików Excel w C#.

Zaimportuj arkusz kalkulacyjny Excel do modyfikacji, a następnie uzyskaj dostęp do jego arkusza roboczego. Zastosuj modyfikacje, jak pokazano poniżej. IronXL oferuje wiele sposobów dostępu do komórek, oferując elastyczność dla różnych stylów programowania.

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-specific-cell-value.cs
using IronXL;

// Load the Excel workbook
WorkBook wb = WorkBook.Load("sample.xlsx");
// Access a specific worksheet
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Access specific cell by identifying its row and column, then modify its value
ws.Rows[3].Columns[1].Value = "New Value";
// Save changes to the workbook
wb.SaveAs("sample.xlsx");
Imports IronXL

' Load the Excel workbook
Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
' Access a specific worksheet
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
' Access specific cell by identifying its row and column, then modify its value
ws.Rows(3).Columns(1).Value = "New Value"
' Save changes to the workbook
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Oto zrzuty ekranu przed i po arkusza kalkulacyjnego Excel sample.xlsx:

Przed Po
Arkusz kalkulacyjny Excel z wyróżnioną komórką pokazującą 'Francja' w kolumnie Kraj, demonstrujący wybór komórki do edycji Komórka Excel B4 pokazująca 'New Value' z niebieską obramówką po edytowaniu zawartości komórki

Zauważ, jak prosto jest zmodyfikować wartość arkusza kalkulacyjnego Excel. To podejście działa dobrze przy aktualizacji konkretnych punktów danych bez wpływu na resztę arkusza kalkulacyjnego.

Alternatywny sposób edytowania konkretnej wartości komórek według adresu komórki:

// Alternative way to access specific cell and apply changes
ws["B4"].Value = "New Value";
// Alternative way to access specific cell and apply changes
ws["B4"].Value = "New Value";
' Alternative way to access specific cell and apply changes
ws("B4").Value = "New Value"
$vbLabelText   $csharpLabel

Jak edytować pełne wartości wiersza w Excelu?

Edytuj pełne wartości wiersza arkusza kalkulacyjnego Excel za pomocą jednej wartości statycznej łatwo. Ta operacja pomaga przy aktualizacji całych rekordów jednocześnie, jak resetowanie danych lub stosowanie masowych aktualizacji. Dla złożonych operacji na wierszach, zobacz dodawanie wierszy i kolumn.

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-row-value.cs
using IronXL;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Setting a static value for the entire row
ws.Rows[3].Value = "New Value";
wb.SaveAs("sample.xlsx");
Imports IronXL

Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
' Setting a static value for the entire row
ws.Rows(3).Value = "New Value"
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Zobacz zrzuty ekranu sample.xlsx poniżej:

Przed Po
Arkusz kalkulacyjny Excel z wyróżnionym wierszem 4 pokazującym dane segmentu Rząd dla Francji z produktem Montana Tabela Excel pokazująca nowy wiersz z dodanymi wpisami 'New Value' we wszystkich kolumnach w arkuszu danych sprzedaży

Edytuj wartości konkretnego zakresu w wierszu, używając funkcji zakresu:

// Editing a specific range of a row
ws["A3:E3"].Value = "New Value";
// Editing a specific range of a row
ws["A3:E3"].Value = "New Value";
' Editing a specific range of a row
ws("A3:E3").Value = "New Value"
$vbLabelText   $csharpLabel

Podczas pracy z zakresami, możesz również potrzebować wyboru zakresów dla zaawansowanych operacji jak sortowanie czy stosowanie formuł.


Jak edytować pełne wartości kolumn w Excelu?

Edytuj pełne wartości kolumn arkusza kalkulacyjnego Excel łatwo jedną wartością. To działa dobrze w scenariuszach jak aktualizacja kolumn walut, stosowanie nowych stawek podatkowych czy ujednolicanie formatów danych w całej kolumnie.

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-full-column.cs
using IronXL;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Setting a static value for the entire column
ws.Columns[1].Value = "New Value";
wb.SaveAs("sample.xlsx");
Imports IronXL

Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
' Setting a static value for the entire column
ws.Columns(1).Value = "New Value"
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

To tworzy nasz sample.xlsx arkusz kalkulacyjny jak pokazano:

Przed Po
Arkusz kalkulacyjny Excel z wyróżnioną na niebiesko kolumną Kraj, pokazujący dane biznesowe przez segmenty i kraje Arkusz kalkulacyjny Excel pokazujący wypełnioną kolumnę B tekstem 'New Value' po operacji masowej edycji kolumn

Jak edytować pełny wiersz dynamicznymi wartościami?

IronXL pozwala edytować konkretne wiersze za pomocą dynamicznych wartości. Edytuj pełny wiersz przypisując dynamiczne wartości dla każdej komórki. To podejście działa dobrze podczas importowania danych z baz danych lub innych źródeł wymagających unikalnych wartości dla każdej komórki. Zobacz przykład:

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-full-row-dynamic.cs
using IronXL;
using System.Linq;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
for (int i = 0; i < ws.Columns.Count(); i++)
{
    // Assign dynamic values to each cell in the row
    ws.Rows[3].Columns[i].Value = "New Value " + i.ToString();
}
wb.SaveAs("sample.xlsx");
Imports IronXL
Imports System.Linq

Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
For i As Integer = 0 To ws.Columns.Count() - 1
    ' Assign dynamic values to each cell in the row
    ws.Rows(3).Columns(i).Value = "New Value " & i.ToString()
Next
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Poniższa tabela pokazuje zrzuty ekranu arkusza kalkulacyjnego Excel sample.xlsx z tego wyniku:

Przed Po
Arkusz kalkulacyjny Excel z wyróżnionym wierszem 4 pokazującym dane segmentu Enterprise przed edytowaniem za pomocą dynamicznych wartości Arkusz Excel z wierszem 4 pokazującym tekst zastępczy 'New Value 0-4' po operacji edycji wiersza dynamicznego

Jak edytować pełną kolumnę dynamicznymi wartościami?

Edytuj konkretne kolumny dynamicznymi wartościami po prostu. Ta technika pomaga wypełnić kolumny danymi sekwencyjnymi jak numery ID, daty czy wartości obliczone na podstawie pozycji wiersza.

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-full-column-dynamic.cs
using IronXL;
using System.Linq;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
for (int i = 0; i < ws.Rows.Count(); i++)
{
    // Skip the first row if it's used as a header
    if (i == 0)
        continue;
    // Assign dynamic values to each cell in the column
    ws.Rows[i].Columns[1].Value = "New Value " + i.ToString();
}
wb.SaveAs("sample.xlsx");
Imports IronXL
Imports System.Linq

Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
For i As Integer = 0 To ws.Rows.Count() - 1
    ' Skip the first row if it's used as a header
    If i = 0 Then
        Continue For
    End If
    ' Assign dynamic values to each cell in the column
    ws.Rows(i).Columns(1).Value = "New Value " & i.ToString()
Next
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Z wynikami tabeli sample.xlsx poniżej:

Przed Po
Arkusz kalkulacyjny Excel z wyróżnioną kolumną Kraj, pokazujący dane biznesowe przez segmenty i produkty Arkusz Excel pokazujący wypełnioną kolumnę Kraj dynamicznymi wartościami zastępczymi 'New Value 1-9' po operacji masowej edycji

Jak zastąpić wartości w arkuszu Excel?

Zastąp każdy typ wartości zaktualizowaną wartością w arkuszu kalkulacyjnym Excel używając funkcji Replace. Użyj tej funkcji, aby zastąpić dane arkusza Excel w dowolnej wymaganej sytuacji. To działa dobrze dla oczyszczania danych, aktualizacji terminologii czy korekty systematycznych błędów w arkuszach kalkulacyjnych.

Jak zastąpić wartości w całym arkuszu roboczym?

Aby zastąpić konkretną wartość w całym arkuszu Excel WorkSheet z zaktualizowaną wartością, uzyskaj dostęp do WorkSheet ws (tak jak w powyższych przykładach) i zastosuj funkcję Replace:

// Replace a specific value in the entire worksheet
ws.Replace("old value", "new value");
// Replace a specific value in the entire worksheet
ws.Replace("old value", "new value");
' Replace a specific value in the entire worksheet
ws.Replace("old value", "new value")
$vbLabelText   $csharpLabel

Ta funkcja zastępuje old value z new value w całym arkuszu Excel WorkSheet. To potężna funkcja dla masowych aktualizacji, które w przeciwnym razie wymagałyby ręcznych operacji znajdowania i zastępowania w Excelu.

Pamiętaj, aby zapisać plik po każdej zmianie, jak pokazano w powyższych przykładach. Dla więcej informacji na temat zapisywania i eksportowania plików Excel, zobacz nasz przewodnik na temat konwersji typów plików arkuszy kalkulacyjnych.

Jak zastąpić wartości w konkretnym wierszu?

Aby dokonać zmian w konkretnym wierszu zamiast całego arkusza roboczego, użyj tego kodu:

// Replace a specific value in a specific row
ws.Rows[2].Replace("old value", "new value");
// Replace a specific value in a specific row
ws.Rows[2].Replace("old value", "new value");
' Replace a specific value in a specific row
ws.Rows(2).Replace("old value", "new value")
$vbLabelText   $csharpLabel

Powyższy kod zastępuje old value z new value tylko w wierszu numer 2. Reszta WorkSheet pozostaje niezmieniona.

Jak zastąpić wartości w zakresie wiersza?

Zastąp wartości w obrębie określonego zakresu w następujący sposób:

// Replace specific values in a row range
ws["From Cell Address : To Cell Address"].Replace("old value", "new value");
// Replace specific values in a row range
ws["From Cell Address : To Cell Address"].Replace("old value", "new value");
' Replace specific values in a row range
ws("From Cell Address : To Cell Address").Replace("old value", "new value")
$vbLabelText   $csharpLabel

Aby zastąpić starą wartość nową wartością w zakresie od B4 do E4 w wierszu numer 4, napisz:

ws["B4:E4"].Replace("old value", "new value");
ws["B4:E4"].Replace("old value", "new value");
ws("B4:E4").Replace("old value", "new value")
$vbLabelText   $csharpLabel

Jak zastąpić wartości w konkretnej kolumnie?

Zastąp wartości konkretnej kolumny, zachowując resztę arkusza roboczego niezmienioną:

// Replace specific values in a column
ws.Columns[1].Replace("old value", "new value");
// Replace specific values in a column
ws.Columns[1].Replace("old value", "new value");
' Replace specific values in a column
ws.Columns(1).Replace("old value", "new value")
$vbLabelText   $csharpLabel

Powyższy kod zastępuje old value z new value tylko dla kolumny numer 1.

Jak zastąpić wartości w zakresie kolumny?

Użyj funkcji zakresu, aby zastąpić w obrębie zakresu określonej kolumny:

// Replace specific values in a column range
ws["B5:B10"].Replace("old value", "new value");
// Replace specific values in a column range
ws["B5:B10"].Replace("old value", "new value");
' Replace specific values in a column range
ws("B5:B10").Replace("old value", "new value")
$vbLabelText   $csharpLabel

Powyższy kod zastępuje old value z new value tylko w zakresie od B5 do B10 dla kolumny B.


Jak usunąć wiersz z arkusza Excel?

IronXL zapewnia prostą funkcję do usunięcia konkretnego wiersza z arkusza Excel WorkSheet. Ta funkcjonalność pomaga przy oczyszczaniu danych lub usuwaniu przestarzałych rekordów z arkuszy kalkulacyjnych. Zobacz przykład:

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-row-value.cs
using IronXL;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Setting a static value for the entire row
ws.Rows[3].Value = "New Value";
wb.SaveAs("sample.xlsx");
Imports IronXL

Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
' Setting a static value for the entire row
ws.Rows(3).Value = "New Value"
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Powyższy kod usuwa wiersz numer 3 z sample.xlsx jak pokazano w poniższej tabeli:

Przed Po
Arkusz roboczy Excel z wyróżnionym wierszem 4 pokazującym dane segmentu Rząd dla Kanady przed operacją usunięcia wiersza Arkusz roboczy Excel z wyróżnionym na niebiesko wierszem 4 pokazującym wynik po operacji usunięcia wiersza

Jak usunąć arkusz roboczy z pliku Excel?

Aby usunąć cały WorkSheet z pliku Excel, użyj następującej metody. To pomaga przy konsolidacji danych lub usuwaniu tymczasowych arkuszy roboczych używanych do obliczeń. Dla więcej informacji na temat zarządzania arkuszami roboczymi, zobacz nasz przewodnik na temat zarządzania arkuszami roboczymi.

// Remove a worksheet by its index
wb.RemoveWorkSheet(1); // by sheet indexing
// Remove a worksheet by its index
wb.RemoveWorkSheet(1); // by sheet indexing
' Remove a worksheet by its index
wb.RemoveWorkSheet(1) ' by sheet indexing
$vbLabelText   $csharpLabel

wb jest WorkBook, tak jak w powyższych przykładach. Aby usunąć arkusz roboczy według nazwy:

// Remove a worksheet by its name
wb.RemoveWorkSheet("Sheet1"); //by sheet name
// Remove a worksheet by its name
wb.RemoveWorkSheet("Sheet1"); //by sheet name
' Remove a worksheet by its name
wb.RemoveWorkSheet("Sheet1") 'by sheet name
$vbLabelText   $csharpLabel

IronXL zawiera wiele więcej funkcji do łatwego wykonywania wszelkiego rodzaju edycji i usuwania w arkuszach kalkulacyjnych Excel. Eksploruj dodatkowe funkcje jak tworzenie wykresów Excel, stosowanie formatowania warunkowego czy praca z formułami. Skontaktuj się z naszym zespołem deweloperskim z wszelkimi pytaniami dotyczącymi używania IronXL w Twoim projekcie.


Szybki dostęp do biblioteki

Dokumentacja biblioteki IronXL

Eksploruj pełne możliwości biblioteki IronXL C# z różnorodnymi funkcjami do edycji, usuwania, stylizacji i doskonalenia swoich skoroszytów Excel.

Dokumentacja biblioteki IronXL
Documentation related to Jak usunąć arkusz roboczy z pliku Excel?

Często Zadawane Pytania

Jak edytowac pliki Excel w C# bez zainstalowanego Microsoft Office?

IronXL pozwala na edytowanie plikow Excel w C# bez potrzeby instalacji Microsoft Office lub Excel Interop. Dziala jako niezalezna biblioteka, mozna modyfikowac komorki, wiersze, kolumny i arkusze kalkulacyjne programowo, eliminujac zaleznosci od Office i dzialajac na roznych platformach, w tym Linux i macOS.

Jaki jest najprostszy sposob na aktualizacje wartosci komorki w pliku Excel przy uzyciu C#?

Za pomoca IronXL mozna zaktualizowac wartosc komorki w kilku liniach kodu: IronXl.WorkBook.Load("file.xlsx").GetWorkSheet("Sheet1")["C3"].Value = "Hello IronXL"; nastepnie zapisac zeszyt roboczy. Podejscie to nie wymaga Excel Interop i zapewnia bezposredni dostep do komorek.

Czy moge programowo edytowac cale wiersze i kolumny w Excel?

Tak, IronXL wspiera edytowanie calego wiersza i kolumn z wartosciami statycznymi lub dynamicznymi. Mozesz zmieniac cale wiersze z jedna wartoscia, wypelniac kolumny programowo lub aktualizowac wiersze z dynamicznymi danymi z roznych zrodel, jak bazy danych czy obliczenia.

Jak usunac wiersze lub arkusze z pliku Excel w C#?

IronXL oferuje proste metody do usuwania wierszy z arkuszy oraz calych arkuszy z plikow Excel. Operacje te wykonywane sa programowo bez wymagania instalacji Excela, co jest idealne dla aplikacji po stronie serwera.

Czy mozliwe jest znalezienie i zamiana wartosci w calym arkuszu Excel?

Tak, IronXL zawiera funkcjonalnosc do wyszukiwania i zamiany wartosci w arkuszach. Mozesz programowo znalezc konkretne wartosci i zamienic je na nowe dane, podobnie jak natywna funkcjonalnosc wyszukiwania i zamiany Excela, ale zautomatyzowana przez kod C#.

Na jakich platformach dziala biblioteka edycji Excela w C#?

IronXL wspiera wiele platform, w tym Windows, Linux i macOS, co czyni ja wszechstronna dla rozwoju miedzyplatformowego. Pozwala to na edytowanie plikow Excel w aplikacjach C# bez wzgledu na srodowisko wdrozeniowe.

Jak zaczac edytowac pliki Excel w C#?

Aby zaczac, pobierz i zainstaluj IronXL przez menedzera pakietow NuGet. Biblioteka jest darmowa do uzytku deweloperskiego. Po instalacji mozesz natychmiast zaczac ladowanie plikow Excel, modyfikowanie komorek i zapisywanie zmian przy uzyciu prostego, intuicyjnego kodu.

Jakie sa zalety programowej edycji Excela w porownaniu z metodami manualnymi?

IronXL umozliwia programowa edycje Excela, co zmniejsza ilosc bledow ludzkich, automatyzuje powtarzalne zadania i pozwala na operacje masowe, ktore bylyby czasochlonne recznie. Eliminacja Excel Interop zmniejsza zlozonosc i zwieksza wydajnosc.

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 1,950,735 | Wersja: 2026.4 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronXl.Excel
uruchom próbkę zobacz, jak Twoje dane stają się arkuszem.