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.

Możesz albo pobrać IronXL.zip albo przeczytać więcej i zainstalować przez stronę paczki NuGet.

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


Install-Package IronXL.Excel

Zamień x.x.x na odpowiednią wersję według potrzeb.


Poradnik "Jak to zrobić"

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

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

Zaimportuj Excel SpreadSheet do modyfikacji, a następnie uzyskaj do niego dostęp przez WorkSheet. 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

Poniżej znajdują się zrzuty ekranu przedstawiające przed i po: SpreadSheet sample.xlsx.

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

Zauważ, jak proste jest modyfikowanie wartości SpreadSheet w Excelu. 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 wierszy arkusza Excel SpreadSheet za pomocą wartości statycznej z łatwością. 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 poniżej zrzuty ekranu sample.xlsx:

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' w każdej kolumnie w arkuszu danych sprzedażowych

Edytuj wartości określonego zakresu w wierszu za pomocą funkcji range:

// 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 kolumny arkusza Excel SpreadSheets z pojedynczą wartością z łatwoś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 produkuje nasz arkusz kalkulacyjny sample.xlsx jak pokazano:

Przed Po
Arkusz kalkulacyjny Excel z wyróżnioną kolumną Country na niebiesko, pokazujący dane biznesowe w różnych segmentach i krajach Arkusz kalkulacyjny Excel pokazujący kolumnę B wypełnioną 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 Excel SpreadSheet sample.xlsx pochodzące z tego wyniku:

Przed Po
Arkusz kalkulacyjny Excel z wyróżnionym wierszem 4 pokazującym dane segmentu Enterprise przed edycją z dynamicznymi wartościami Arkusz Excel z wierszem 4 pokazującym jako tekst zastępczy 'New Value 0-4' po dynamicznej operacji edycji wiersza

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 rezultatami tabeli sample.xlsx poniżej:

Przed Po
Arkusz kalkulacyjny Excel z wyróżnioną kolumną Country, pokazujący dane biznesowe w różnych segmentach i produktach Arkusz Excel pokazujący kolumnę Country wypełnioną dynamicznymi wartościami zastępczymi 'New Value 1-9' po operacji masowej edycji

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

Zastąp dowolny typ wartości zaktualizowaną wartością w arkuszu Excel SpreadSheet za pomocą funkcji Replace. Użyj tej funkcji, aby zastąpić dane SpreadSheet w Excelu w dowolnym wymaganym przypadku. 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 SpreadSheet 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 SpreadSheet. 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 range, aby zastąpić w zakresie konkretnej 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 arkusza Excel SpreadSheet. 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 SpreadSheet sample.xlsx, jak pokazano w poniższej tabeli:

Przed Po
Arkusz z Excela z wyróżnionym wierszem 4 pokazujący dane segmentu Rząd dla Kanady przed operacją usunięcia wiersza Arkusz z Excela z wierszem 4 wyróżnionym na niebiesko 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 poniższej 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.

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-17.cs
// Remove a worksheet by its index
wb.RemoveWorkSheet(1); // by sheet indexing
$vbLabelText   $csharpLabel

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

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-18.cs
// 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 usunięć w arkuszu Excel SpreadSheets. 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 plików Excel w C# bez potrzeby instalacji Microsoft Office lub Excel Interop. Dziala jako niezależna biblioteka, można modyfikowac komorki, wiersze, kolumny i arkusze kalkulacyjne programowo, eliminujac zależności od Office i działajac na różnych platformach, w tym Linux i macOS.

Jaki jest najprostszy sposob na aktualizacje wartosci komorki w pliku Excel przy użyciu C#?

Za pomoca IronXL można zaktualizować wartosc komorki w kilku liniach kodu: IronXL.WorkBook.Load("file.xlsx").GetWorkSheet("Sheet1")["C3"].Value = "Hello IronXL"; następnie zapisać zeszyt roboczy. Podejscie to nie wymaga Excel Interop i zapewnia bezpośredni dostep do komorek.

Czy mogę programowo edytowac całe wiersze i kolumny w Excel?

Tak, IronXL wspiera edytowanie całego wiersza i kolumn z wartosciami statycznymi lub dynamicznymi. Możesz zmieniac całe wiersze z jedna wartoscia, wypełniać kolumny programowo lub aktualizowac wiersze z dynamicznymi danymi z różnych 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 plików Excel. Operacje te wykonywane sa programowo bez wymagania instalacji Excela, co jest idealne dla aplikacji po stronie serwera.

Czy możliwe jest znalezienie i zamiana wartosci w całym arkuszu Excel?

Tak, IronXL zawiera funkcjonalność do wyszukiwania i zamiany wartosci w arkuszach. Możesz programowo znalezc konkretne wartosci i zamienic je na nowe dane, podobnie jak natywna funkcjonalność wyszukiwania i zamiany Excela, ale zautomatyzowana przez kod C#.

Na jakich platformach działa 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 plików Excel w aplikacjach C# bez wzgledu na środowisko 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 możesz natychmiast zaczac ladowanie plików Excel, modyfikowanie komorek i zapisywanie zmian przy użyciu prostego, intuicyjnego kodu.

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

IronXL umożliwia programowa edycje Excela, co zmniejsza ilosc błędów ludzkich, automatyzuje powtarzalne zadania i pozwala na operacje masowe, ktore bylyby czasochlonne ręcznie. Eliminacja Excel Interop zmniejsza zlozonosc i zwieksza wydajność.

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,134,203 | 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.