如何在 C# 中編輯 Excel 文件

C# 編輯 Excel 文件

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

使用IronXL庫在 C# 中編輯 Excel 文件,該庫提供了簡單的方法來以程式設計方式修改單元格、行、列和工作表,而無需 Excel 互通,從而減少錯誤和複雜性。

開發人員在使用 C# 修改 Excel 檔案時需要非常精確,因為一個錯誤可能會損壞整個文件。 簡單且有效率的程式碼可降低出錯風險,並簡化對 Excel 檔案的程式化編輯或刪除。 IronXL提供了一個全面的解決方案,用於在 C# 中處理 Excel 文件,消除了對 Microsoft Office 的依賴。 本指南介紹如何使用經過測試的函數,在 C# 中正確、快速地編輯 Excel 檔案。

快速入門:使用IronXL編輯特定儲存格值

本範例展示如何使用IronXL載​​入現有的 Excel 檔案、更新單一儲存格並儲存變更。 只需不到 5 行程式碼即可開始,無需 Interop。 對於複雜的操作,請查閱我們全面的API 參考文件

  1. 使用NuGet套件管理器安裝https://www.nuget.org/packages/IronXl.Excel

    PM > Install-Package IronXl.Excel
  2. 複製並運行這段程式碼。

    IronXl.WorkBook.Load("file.xlsx").GetWorkSheet("Sheet1")["C3"].Value = "Hello IronXL";
    // then save your workbook
    iroExcelWorkBook.SaveAs("file.xlsx");
  3. 部署到您的生產環境進行測試

    今天就在您的專案中開始使用免費試用IronXL

    arrow pointer

步驟 1

如何設定IronXL以進行 C# Excel 編輯?

本教學使用IronXL,一個 C# Excel 庫。 下載並將其安裝到您的專案中(開發免費)即可使用這些功能。 IronXL支援包括LinuxmacOS在內的各種平台,使其能夠靈活地進行跨平台開發。

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

安裝完成後,我們就可以開始了。 IronXL新手? 請查看我們的"入門概述"以獲取全面介紹。


Install-Package IronXl.Excel

根據需要將 x.x.x 替換為對應的版本號。


操作指南

如何在Excel中編輯特定單元格的值?

首先,學習如何編輯 Excel 表格中的特定儲存格值。 這是在 C# 中編輯 Excel 檔案時最常見的操作之一。

匯入要修改的 Excel 表格,然後存取其工作表。 按以下所示進行修改。 IronXL提供多種訪問細胞的方式,為不同的編程風格提供靈活性。

: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");
$vbLabelText   $csharpLabel

以下是 Excel 表格 sample.xlsx 的修改前後截圖:

Excel電子表格,其中突出顯示的單元格顯示 Excel 儲存格 B4 在編輯儲存格內容後顯示帶有藍色選擇邊框的

注意修改 Excel 表格中的數值是多麼簡單。 這種方法適用於更新特定資料點而不影響電子表格的其他部分。

另一種透過單元格位址編輯特定單元格值的方法是:

// 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

如何在Excel中編輯整行值?

輕鬆編輯Excel電子表格中具有靜態值的整行值。 此操作有助於一次更新整個記錄,例如重置資料或應用批次更新。 對於複雜的行操作,請探索新增行和列的方法

: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");
$vbLabelText   $csharpLabel

請查看下方 sample.xlsx 的螢幕截圖:

Excel電子表格,第4行已高亮顯示,顯示了法國政府部門的數據以及Montana產品資訊 Excel 表格顯示銷售資料電子表格中所有欄位都新增了

使用 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";
$vbLabelText   $csharpLabel

在使用資料區域時,您可能還需要選擇資料區域以進行排序或套用公式等進階操作。


如何在Excel中編輯整列值?

輕鬆使用單一值編輯Excel電子表格中的整列值。 這對於更新貨幣列、套用新的稅率或統一整列資料格式等場景非常有效。

: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");
$vbLabelText   $csharpLabel

這將產生如下所示的 sample.xlsx 電子表格:

Excel電子表格,其中 Excel電子表格顯示,批次編輯列後,B列填入了

如何編輯包含動態值的整行?

IronXL允許使用動態值編輯特定行。 透過為每個單元格指派動態值來編輯整行。 當從資料庫或其他需要每個單元格具有唯一值的來源匯入資料時,這種方法非常有效。 請看範例:

: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");
$vbLabelText   $csharpLabel

下表顯示了此輸出中 Excel 電子表格 sample.xlsx 的螢幕截圖:

Excel電子表格,第4行已高亮顯示,顯示編輯動態值之前的企業細分資料 Excel 表格,第 4 行在動態編輯行操作後顯示

如何編輯包含動態值的整列?

輕鬆編輯具有動態值的特定列。 此技術有助於根據行位置,使用順序資料(例如 ID 號碼、日期或計算值)填入列。

: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");
$vbLabelText   $csharpLabel

以下是sample.xlsx 的表格結果:

Excel電子表格,突出顯示 Excel 表格顯示批次編輯操作後,

如何在Excel中替換電子表格中的數值?

使用 Replace 函數將 Excel 電子表格中的任何值類型替換為更新的值。 在任何需要的情況下,都可以使用此函數取代 Excel 電子表格資料。 這對於資料清理、更新術語或修正電子表格中的系統性錯誤非常有效。

如何替換整個工作表中的值?

若要將整個 Excel 表格中的特定值替換為更新的值,請造訪 WorkSheet(與上述範例相同)並套用 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");
$vbLabelText   $csharpLabel

此函數將完整的 Excel 中的 old value 替換為 new value WorkSheet。 對於批次更新而言,這是一個強大的功能,否則需要在 Excel 中手動進行尋找和取代操作。

如上例所示,每次變更後請務必儲存檔案。 有關保存和匯出 Excel 文件的更多信息,請參閱我們的電子表格文件類型轉換指南。

如何替換特定行中的值?

若要對特定行而不是整個工作表進行更改,請使用下列程式碼:

// 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

上述程式碼僅將第 2 行的 old value 替換為 new value。其餘的 WorkSheet 保持不變。

如何替換行區域中的值?

依下列方式取代特定範圍內的值:

// 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

若要將行號為 4B4E4 範圍內的舊值替換為新值,請編寫:

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

如何替換特定列中的值?

在保持工作表其餘部分不變的情況下,替換特定列的值:

// 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

上述代碼僅將第 1 列的 old value 替換為 new value

如何替換列區域中的值?

使用 range 函數取代特定列中指定範圍內的資料:

// 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

上述代碼僅在 B 列中將 B5B10 範圍內的 old value 替換為 new value


如何從Excel工作表中刪除一行?

IronXL提供了一個簡單的函數來刪除 Excel 中的特定行 WorkSheet。 此功能有助於清理資料或從電子表格中刪除過時的記錄。 請看範例:

: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");
$vbLabelText   $csharpLabel

上述程式碼刪除瞭如下表中所示的 sample.xlsx 的第 3 行:

Excel 工作表,第 4 行已高亮顯示,顯示了刪除行操作之前的加拿大政府部門資料 Excel 工作表,第 4 行以藍色高亮顯示,顯示刪除行操作後的結果

如何從Excel檔案中刪除工作表?

若要刪除 Excel 檔案中的整個 WorkSheet,請使用下列方法。 這有助於合併資料或刪除用於計算的臨時工作表。 有關管理工作表的更多信息,請參閱我們的工作表管理指南。

// 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

wbWorkBook,與上面的範例相同。 按名稱刪除工作表:

// 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包含更多功能,可輕鬆在 Excel 電子表格中執行任何類型的編輯和刪除操作。 探索更多功能,例如 建立 Excel 圖表應用條件格式使用公式。 如果您對在專案中使用IronXL有任何疑問,請聯絡我們的開發團隊。


圖書館快速訪問

### IronXL庫文檔

利用IronXL C# 庫的各種函數,探索其全部功能,用於編輯、刪除、設定樣式和完善您的 Excel 工作簿。

IronXL庫文檔
Documentation related to 如何從Excel檔案中刪除工作表?

常見問題解答

在沒有安裝 Microsoft Office 的情況下,如何用 C# 編輯 Excel 檔案?

IronXL 可讓您在 C# 中編輯 Excel 檔案,而不需要 Microsoft Office 或 Excel Interop。它提供了一個可程式化修改儲存格、行、列和工作表的獨立函式庫,消除了 Office 的依賴性,並可跨平台運作,包括 Linux 和 macOS。

使用 C# 更新 Excel 檔案中儲存格數值的最簡單方法是什麼?

有了 IronXL,您只需幾行程式碼就能更新儲存格值:IronXl.WorkBook.Load("file.xlsx").GetWorkSheet("Sheet1")["C3"].Value = "Hello IronXL";隨後儲存工作簿。此方法不需要 Excel Interop,並可直接存取儲存格。

我可以在 Excel 中以程式化方式編輯整行整列嗎?

是的,IronXL 支援以靜態或動態數值編輯整列整行。您可以使用單一值修改整行、以程式化方式填入欄位,或使用資料庫或計算等各種來源的動態資料更新行。

如何使用 C# 從 Excel 檔案中移除行或工作表?

IronXl.Excel 提供了從工作表中移除行以及從 Excel 檔案中刪除整個工作表的簡單方法。這些操作都是以程式化的方式執行,不需要安裝 Excel,因此非常適合伺服器端應用程式。

是否可以在 Excel 試算表中尋找並取代整個試算表中的值?

是的,IronXL 包含在電子表格中搜尋和取代值的功能。您可以程式化地尋找特定值,然後用新的資料取代它們,類似 Excel 的原生尋找和取代功能,但透過 C# 程式碼來自動執行。

C# Excel 編輯函式庫支援哪些平台?

IronXL 支援多種平台,包括 Windows、Linux 和 macOS,是跨平台開發的多面手。無論部署環境如何,您都可以在 C# 應用程式中編輯 Excel 檔案。

如何開始使用 C# 編輯 Excel 檔案?

要開始使用,請透過 NuGet 套件管理員下載並安裝 IronXL。這個函式庫是免費供開發使用的。安裝完成後,您可以立即開始載入 Excel 檔案、修改儲存格,並使用簡單直覺的程式碼儲存變更。

與手動方式相比,程式化 Excel 編輯有哪些優點?

IronXl.Excel 支援程式化 Excel 編輯,可減少人為錯誤、自動執行重複性工作,並可進行手動耗時的大量作業。它還消除了 Excel Interop 的需要,降低了複雜性並提高了性能。

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/ready_to_started_202509.php
Line: 12
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 489
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/ready_to_started_202509.php
Line: 19
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 489
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

準備好開始了嗎?
Nuget 下載 1,890,100 | 版本: 2026.3 剛剛發布

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/still_scrolling_202512.php
Line: 17
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 71
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/still_scrolling_202512.php
Line: 24
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 71
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

Still Scrolling Icon

還在捲動嗎?

想要快速證明? PM > Install-Package IronXl.Excel
執行範例 觀看您的資料變成試算表。