使用IronXL在C#中編寫Excel .NET函式
通過存取工作表、使用簡單的括號表示法設置單元格值並保存更改,在C#中使用IronXL編寫Excel資料。 該程式庫支持以程式方式寫入特定單元格、範圍和替換值,而無需複雜的程式碼。
C#應用程式通常需要以程式方式更新文件並在Excel電子表格中寫入新資料。 有時候,Excel .NET功能可能很複雜,但使用IronXL程式庫,這項任務變得簡單明瞭,允許以任何格式處理Excel電子表格。 直接存取特定單元格,並以最少的程式碼分配自定義值。 無論您是建立新電子表格還是編輯現有的Excel文件,IronXL提供了直觀的方法來滿足您的所有Excel自動化需求。
快速開始:將值寫入特定單元格
此範例顯示如何使用IronXL將值寫入單個單元格,並僅用幾行程式碼保存Excel文件。
編寫Excel .NET指令
- 下載Excel .NET的程式庫
- 在特定單元格中寫入值
- 在多個單元格中寫入靜態值
- 在單元格範圍中寫入動態值
- 在特定行、列、範圍等中替換單元格值
我如何存取Excel文件?
首先存取您想寫入資料的Excel文件。 在項目中打開Excel文件,然後使用以下程式碼打開其特定工作表。
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-load-file.cs
// Load Excel file in the project
WorkBook workBook = WorkBook.Load("path");
' Load Excel file in the project
Dim workBook As WorkBook = WorkBook.Load("path")
上述操作會打開指定的Excel文件。接下來,存取工作表。
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-get-sheet.cs
// Open Excel WorkSheet
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
' Open Excel WorkSheet
Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
Excel工作表打開於workSheet using IronXL中,您可以用它來在Excel文件中寫入任何型別的資料。了解更多有關載入Excel文件和通過連結中的範例以不同方式存取工作表。 要處理多個工作表,請查閱我們的管理工作表指南,其中涵蓋了以程式方式新增、重命名和刪除工作表。
注意:不要忘記在您的項目中加入 IronXL 參考,並使用 using IronXL 導入程式庫。
我如何在特定單元格中寫入值?
您可以用多種不同的方法在Excel文件中寫入內容,但基本方法是使用ExcelCell。 為此,您可以存取打開的Excel工作表的任何單元格,並在其中寫入值,如下所示:
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-cell.cs
workSheet["Cell Address"].Value="Assign the Value";
workSheet("Cell Address").Value="Assign the Value"
這是一個範例,展示如何在您的C#項目中使用上述功能寫入Excel單元格。
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-cell-full.cs
using IronXL;
// Load Excel file
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Open WorkSheet of sample.xlsx
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
// Access A1 cell and write the value
workSheet["A1"].Value = "new value";
// Save changes
workBook.SaveAs("sample.xlsx");
Imports IronXL
' Load Excel file
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Open WorkSheet of sample.xlsx
Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
' Access A1 cell and write the value
Private workSheet("A1").Value = "new value"
' Save changes
workBook.SaveAs("sample.xlsx")
此程式碼在Excel文件new value。 同樣,您可以在Excel文件的任何單元格地址中插入值。如需更高級的格式選項,例如設置單元格字體與大小或應用背景顏色和圖案,IronXL提供了全面的樣式能力。
注意:在工作表中寫入新值後,不要忘記保存Excel文件,如上方範例所示。
我為什麼要強制分配精確值?
當設置Value屬性時,IronXL會嘗試將其轉換為相應的值型別。 有時這種評估是不理想的,因為您希望強制分配精確值到單元格中,而不進行轉換。 為此,將值分配為字串。 在IronXL中,簡單地使用Value相同的效果。
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-stringvalue.cs
// Assign value as string
workSheet["A1"].StringValue = "4402-12";
' Assign value as string
workSheet("A1").StringValue = "4402-12"
我如何在範圍中寫入靜態值?
您可以在多個單元格中寫入新值,稱為範圍,如下所示:
// Assign a static value to a range of cells
worksheet["B2:C5"].Value = "static value";
// Assign a static value to a range of cells
worksheet["B2:C5"].Value = "static value";
' Assign a static value to a range of cells
worksheet("B2:C5").Value = "static value"
通過這種方式,您可以指定資料將被寫入的單元範圍To。 new value將會被寫入此範圍內的所有單元格。 要了解更多有關C# Excel範圍,請查看這裡的範例。
查看下面的範例,以行動展示如何寫入範圍。
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-cell-range-full.cs
using IronXL;
// Load Excel file
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Open WorkSheet of sample.xlsx
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
// Specify range row wise and write new value
workSheet["B2:B9"].Value = "new value";
// Specify range column wise and write new value
workSheet["C3:C7"].Value = "new value";
// Save changes
workBook.SaveAs("sample.xlsx");
Imports IronXL
' Load Excel file
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Open WorkSheet of sample.xlsx
Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
' Specify range row wise and write new value
Private workSheet("B2:B9").Value = "new value"
' Specify range column wise and write new value
Private workSheet("C3:C7").Value = "new value"
' Save changes
workBook.SaveAs("sample.xlsx")
此程式碼將sample.xlsx。 此處使用了Excel單元格的靜態值。
我如何在範圍中寫入動態值?
您也可以如下面所示將動態值新增到一個範圍中。 當您需要從資料庫填充資料或生成報告時,這非常有用。 您可能還想探索作為DataSet導入和匯出,以進行更複雜的資料操作。
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-dynamic-value.cs
using IronXL;
// Load Excel file
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Open WorkSheet of sample.xlsx
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
// Specify range in which we want to write the values
for (int i = 2; i <= 7; i++)
{
// Write the Dynamic value in one row
workSheet["B" + i].Value = "Value" + i;
// Write the Dynamic value in another row
workSheet["D" + i].Value = "Value" + i;
}
// Save changes
workBook.SaveAs("sample.xlsx");
Imports IronXL
' Load Excel file
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Open WorkSheet of sample.xlsx
Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
' Specify range in which we want to write the values
For i As Integer = 2 To 7
' Write the Dynamic value in one row
workSheet("B" & i).Value = "Value" & i
' Write the Dynamic value in another row
workSheet("D" & i).Value = "Value" & i
Next i
' Save changes
workBook.SaveAs("sample.xlsx")
上述程式碼將動態值寫入Excel文件7。 您可以在sample.xlsx上查看這段程式碼的結果。
我如何替換Excel單元格值?
使用IronXL,您可以輕鬆地寫入新值來替換舊值,使用Replace()功能,如下所示:
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace.cs
workSheet.Replace("old value", "new value");
workSheet.Replace("old value", "new value")
上述函式將old value。
如何替換特定列中的值?
如果您只想在一個特定的行中寫入新值,請按以下方式操作:
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-row.cs
workSheet.Rows[RowIndex].Replace("old value", "new value");
workSheet.Rows(RowIndex).Replace("old value", "new value")
這將old value上。
如何替換特定欄中的值?
同樣,如果想將old value,請按以下方式操作:
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-column.cs
workSheet.Columns[ColumnIndex].Replace("old value", "new value");
workSheet.Columns(ColumnIndex).Replace("old value", "new value")
上述程式碼將old value,但僅限於指定的列索引。 工作表的其餘部分保持不變。
我如何在特定範圍內替換值?
IronXL還提供了一種方法來寫入old value,僅限於指定範圍內。 這在處理特定資料區域或需要更新電子表格中特定部分的值時非常有幫助。 有關更高級的範圍操作,請參閱我們的排序單元範圍指南。
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-range.cs
workSheet["From Cell Address : To Cell Address"].Replace("old value", "new value");
workSheet("From Cell Address : To Cell Address").Replace("old value", "new value")
這會將old value上,只是在指定範圍內的單元格中。
查看範例,瞭解如何使用上述所有函式將新值寫入Excel工作表以替換舊值。
完整的替換範例是什麼樣的?
:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-full.cs
using IronXL;
WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
// Write new above old in complete WorkSheet
workSheet.Replace("old", "new");
// Write new above old just in row no 6 of WorkSheet
workSheet.Rows[5].Replace("old", "new");
// Write new above old just in column no 5 of WorkSheet
workSheet.Columns[4].Replace("old", "new");
// Write new above old just from A5 to H5 of WorkSheet
workSheet["A5:H5"].Replace("old", "new");
workBook.SaveAs("sample.xlsx");
Imports IronXL
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
' Write new above old in complete WorkSheet
workSheet.Replace("old", "new")
' Write new above old just in row no 6 of WorkSheet
workSheet.Rows(5).Replace("old", "new")
' Write new above old just in column no 5 of WorkSheet
workSheet.Columns(4).Replace("old", "new")
' Write new above old just from A5 to H5 of WorkSheet
workSheet("A5:H5").Replace("old", "new")
workBook.SaveAs("sample.xlsx")
要了解更多有關如何編寫Excel .NET應用程式等,請查看我們的完整教程打開和寫入Excel文件。 如果您正在處理不同的文件格式,您可能也會發現我們關於轉換電子表格文件型別的指南很有幫助。
快速存取教程
常見問題
如何使用 C# 將值寫入 Excel 檔案中特定的儲存格?
using IronXL,您可以透過簡單地存取特定儲存格並設置其 Value 屬性來寫入特定儲存格。例如:worksheet["A1"].Value = "Hello, IronXL!";然後使用 workbook.SaveAs("output.xlsx") 儲存活頁簿。這種簡單方法消除了複雜的 Excel 互操作程式碼的需求。
程式化地寫入 Excel 檔案資料的第一步是什麼?
第一步是使用 IronXL 的 WorkBook.Load() 方法載入 Excel 檔案,然後存取您要寫入資料的特定工作表。IronXL 提供直觀的方法,使您能夠開啟任何 Excel 格式並立即開始使用儲存格和範圍。
我可以一次將資料寫入多個 Excel 儲存格嗎?
可以,IronXL 支援高效地寫入多個儲存格。您可以將靜態值單獨寫入多個指定儲存格,或使用儲存格範圍程式化地寫入多個儲存格的動態值。該程式庫同時提供針對單個儲存格操作和批量資料寫入的方法。
我如何在 Excel 試算表中取代現有的儲存格值?
IronXL 允許您透過簡單地存取儲存格並為其分配新值來取代其儲存格值。您可以取代特定行、列或範圍中的值。當您將新值分配給儲存格時,程式庫會自動處理現有資料的覆寫。
支援哪些 Excel 檔案格式以寫入資料?
IronXL 支援寫入所有主要的 Excel 檔案格式,包括 .xlsx、.xls、.xlsm 和 CSV 檔案。程式庫自動處理格式特定的需求,讓您無需更改程式碼即可使用任何格式的 Excel 試算表。
我需要安裝 Microsoft Excel 來在 C# 中寫入 Excel 檔案嗎?
不需要,IronXL 是獨立運行的,不需要 Microsoft Excel 或 Office Interop。它是一個獨立的 .NET 程式庫,能夠在任何系統上程式化地讀取、寫入和建立 Excel 檔案,非常適合用於未安裝 Excel 的伺服器應用程式和環境。
我如何在寫入 Excel 檔案資料後儲存更改?
在儲存格中寫入資料後,使用 IronXL 的 SaveAs() 方法建立新檔案,或使用 Save() 覆寫現有檔案,以儲存您的更改。該程式庫確保您的所有儲存格更新、格式和公式被正確地儲存在您指定的 Excel 檔案格式中。


