如何對單元格應用條件格式

如何在 Excel 中使用 C# 應用條件格式化

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

在 C# 中應用條件格式化,使用 IronXL.Excel 的簡單 API 來建立具有比較運算符和樣式選項的規則,然後將它們套用至 Excel 試算表中的特定儲存格範圍。

條件格式是電子表格和資料處理軟體中的一項功能,它允許您根據某些條件或標準對儲存格或資料套用特定的格式樣式或規則。 它可以讓您直觀地突出或強調符合特定條件或標準的資料,讓您更容易分析和理解試算表或表格中的資料。 無論您是使用 現有的 Excel 檔案,或是 從頭開始建立新的試算表,IronXL.Excel 都能提供實施條件格式化規則的全面支援。

使用 IronXL 新增、擷取和移除條件格式。 在使用樣式新增條件格式化時,您可以進行字型和大小調整、設定邊界和對齊方式,以及定義背景樣式和顏色。 這些格式化選項可與其他 Excel 功能無縫配合,例如 公式單元資料格式

快速入門:輕鬆添加"小於"格式規則

使用 IronXL 快速上手:只需使用一行文字即可建立條件格式化規則,並將其套用至單元格範圍。 定義您的條件和風格,剩下的就交給 IronXL 處理。

Nuget Icon立即開始使用 NuGet 建立 PDF 檔案:

  1. 使用 NuGet 套件管理器安裝 IronXL

    PM > Install-Package IronXL.Excel

  2. 複製並運行這段程式碼。

    var rule = workSheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.LessThan, "8"); workSheet.ConditionalFormatting.AddConditionalFormatting("A1:A10", rule);
  3. 部署到您的生產環境進行測試

    立即開始在您的專案中使用 IronXL,免費試用!
    arrow pointer


開始使用 IronXL

!{--01001100010010010100001001010010010000010101001001011001010111110101001101010100010001010101010 10100010111110101010001010010010010010100000101001100010111110100001001001100010011111010000100100110001001111010101


如何新增條件格式化規則? 條件格式由一系列規則和樣式組成,當儲存格滿足指定的規則條件時,這些規則和樣式將被套用。 樣式可以包括[字體和大小調整](/csharp/excel/how-to/cell-font-size/)、[邊框和對齊設置](/csharp/excel/how-to/border-alignment/),以及[背景圖案和顏色](/csharp/excel/how-to/background-pattern-color/)。 這些格式化功能與 IronXL.Excel 的 [ 選擇範圍](https://ironsoftware.com/csharp/excel/how-to/select-range/)和處理特定儲存格集合的功能完美整合。 若要定義規則,請使用 IronXL 提供的`CreateConditionalFormattingRule`方法。 將此方法傳回的物件賦值給一個變量,並使用它來套用所需的樣式。 最後,使用 `AddConditionalFormatting` 方法,提供所建立的規則以及應用規則的儲存格範圍。 此方法類似於 [ 以程式化方式管理工作表](https://ironsoftware.com/csharp/excel/how-to/manage-worksheet/)或使用其他 Excel 功能。

有哪些比較運算符號可用? IronXL 支援一套完整的比較運算符號,可讓您建立複雜的條件格式化規則。 這些運算符號可與數值、日期,甚至文字比較(如適用)無縫結合。 可用的規則有: - **NoComparison**:預設值,在套用格式化而不進行比較時使用 - **Between**: 強調特定範圍內的值 - **NotBetween**:強調指定範圍以外的值 - **相等**:匹配精確值 - **NotEqual**:排除特定值 - **GreaterThan**:高亮顯示高於臨界值的值 - **LessThan**:高亮顯示低於臨界值的值 - **GreaterThanOrEqual**:包含臨界值 - **LessThanOrEqual**: 包含臨界值 這些運算符號可與各種資料類型結合,在分析 [ 從 CSV 檔案](https://ironsoftware.com/csharp/excel/how-to/csharp-read-csv-file/)或其他來源匯入的資料時效果特別好。

如何設定條件格式的樣式? 在建立條件格式化規則時,IronXL 提供了廣泛的樣式選項。 您可以透過修改各種視覺屬性,自訂符合您條件的儲存格外觀。 以下範例示範如何建立規則並套用背景色樣: ```csharp :path=/static-assets/excel/content-code-examples/how-to/conditional-formatting-add.cs ``` `PatternFormatting` 屬性提供對各種樣式選項的存取,而不只是背景顏色。 您也可以修改圖案樣式、前景顏色和圖案填充,以建立更複雜的視覺指標。 這種靈活性可讓您建立符合組織品牌的格式,或讓特定的資料模式立即可辨識。

應用格式化時會是什麼樣子?
Spreadsheet with columns A and B containing numbers 1-10 before conditional formatting is applied
Spreadsheet with blue conditional formatting applied to cells A1-A7, showing formatted vs unformatted columns

如何擷取現有的條件格式化? 當您需要修改已包含格式化規則的試算表,或想要分析套用至特定範圍的格式化邏輯時,使用現有的條件格式化是非常必要的。 IronXL 可讓您直接存取和修改這些現有的規則。 若要擷取條件格式規則,請使用`GetConditionalFormattingAt`方法。 傳回的規則物件可能包含多個規則; 使用`GetRule`方法存取特定規則。 擷取規則的大部分屬性無法修改,但您可以透過 `PatternFormatting` 屬性調整 `BackgroundColor` 。 此限制可確保規則的核心邏輯維持不變,同時仍允許視覺客製化。

我可以修改現有規則的哪些屬性? 在使用擷取的條件格式化規則時,了解哪些屬性可以修改。 主要的可修改屬性是背景顏色,可讓您更新視覺外觀而不改變底層的條件邏輯。 這裡有一個範例,示範檢索和修改現有的規則: ```csharp :path=/static-assets/excel/content-code-examples/how-to/conditional-formatting-retrieve.cs ``` 當您需要更新試算表的視覺主題,同時保留嵌入在條件格式規則中的商業邏輯時,這種方法特別有用。

如何存取集合中的多個規則? 在處理複雜的試算表時,您可能會遇到應用於相同範圍或重疊範圍的多重條件格式化規則。 `GetConditionalFormattingAt` 方法會返回一個集合,此集合可包含多個規則。 您可以使用標準的集合方法遍歷這些規則,或使用 `GetRule(index)` 透過索引存取特定規則。 當[處理來自不同來源的資料](https://ironsoftware.com/csharp/excel/features/working-with-data/)時,此功能尤其有價值,因為這些資料可能有不同的格式要求。
Excel spreadsheet showing rows 1-7 in column A highlighted with blue conditional formatting, rows 8-10 unformatted
Excel spreadsheet with green conditional formatting applied to cells A1-A10 containing numbers 1-10

如何移除條件格式化? 有些情況下,您需要完全移除條件格式化規則。 在準備匯出資料、簡化試算表維護,或格式規則不再適用於您目前的資料分析需求時,這可能是必要的。 若要刪除條件格式規則,請使用`RemoveConditionalFormatting`方法。 將目標規則的索引傳遞給此方法。 此操作對目前的工作簿實例而言是永久性的,不過如果需要,您可以隨時重新載入原始檔案。

何時應該移除條件格式化規則? 在這些情況下,請考慮移除條件格式化規則: - **資料匯出**:當[匯出至不同格式](https://ironsoftware.com/csharp/excel/how-to/convert-spreadsheet-file-types/)而不支援格式化時 - **效能最佳化**:複雜的規則會影響大型資料集的效能 - **規則衝突**:多重重疊的規則造成混亂或意想不到的結果 - **簡化分析**:為不需要格式化的自動化處理準備資料 - **範本建立**:建立乾淨的範本供他人使用 ```csharp :path=/static-assets/excel/content-code-examples/how-to/conditional-formatting-remove.cs ```

移除之後,儲存格樣式將會如何? 當您移除條件格式化規則時,只有條件格式化會被移除 - 底層的儲存格資料和任何直接格式化保持不變。 單元格還原為其基本格式,其中包括直接套用至單元格而非透過條件規則套用的任何樣式。 如果儲存格直接套用了特定的字型、邊框或填充顏色 (而非透過條件格式化),則在移除條件格式化後,這些樣式仍會保留。 此行為可確保您的資料完整性,同時讓您完全控制試算表的視覺呈現。 如需更進階的格式化需求,請探索 IronXL 全面的 [API 參考資料](https://ironsoftware.com/csharp/excel/object-reference/api/),以瞭解所有可用的格式化選項。

常見問題解答

如何在 C# 中為 Excel 單元格添加條件格式化?

IronXL 使在 C# 中添加條件格式化變得簡單。首先,使用 CreateConditionalFormattingRule 方法與您所需的比較運算符和值建立條件格式化規則。然後使用 AddConditionalFormatting 方法將其套用至儲存格範圍。例如: var rule = workSheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.LessThan, "8"); workSheet.ConditionalFormatting.AddConditionalFormatting("A1:A10", rule);

條件格式化規則有哪些比較運算符號可用?

IronXL 支援條件格式化規則的各種比較運算符號,包括 LessThan、GreaterThan、Equal、NotEqual 等。您可以在使用 CreateConditionalFormattingRule 方法建立規則時指定運算符號,讓您可以依據不同的條件來強調儲存格,例如值小於 8、大於 100 或等於特定文字。

我可以使用條件格式化套用多種樣式嗎?

是的,IronXL 允許您使用條件格式化規則套用全面的樣式。您可以調整字型和大小、設定邊框和對齊方式,以及定義背景圖案和顏色。這些格式化選項可與其他 Excel 功能(如公式和儲存格資料格式)無縫配合,讓您完全控制在符合條件時儲存格的顯示方式。

如何從 Excel 檔案擷取現有的條件格式化規則?

IronXL.Excel 提供 GetConditionalFormattingAt 方法,可從 Excel 檔案中擷取既有的條件格式化規則。這可讓您檢查、修改或移除先前套用至特定儲存格範圍的規則,讓您輕鬆管理和更新現有試算表中的條件格式。

條件格式化對新的和現有的 Excel 檔案都有效嗎?

是的,無論您是處理現有的 Excel 檔案或從頭開始建立新的試算表,IronXL.Excel 都能提供實施條件格式化規則的全面支援。您可以載入現有的試算表並新增條件格式,或建立新的工作簿,並在建立資料時套用格式規則。

我可以程式化地移除條件格式化規則嗎?

IronXL 允許您以程式化的方式新增、擷取和移除條件格式化規則。這可讓您完全控制 Excel 檔案中的條件格式化管理,使您能夠根據應用程式的需求動態更新或清除格式化。

Chaknith Bin
軟體工程師
Chaknith 在 IronXL 和 IronBarcode 上工作。他對 C# 和 .NET 擁有深厚的專業知識,幫助改進了軟體並支持客戶。他從用戶互動中得到的見解有助於改善產品、文檔和整體體驗。
準備好開始了嗎?
Nuget 下載 1,765,830 | 版本: 2025.12 剛發表