如何使用 C# 在 Excel 中套用條件格式
透過 IronXL 的簡易 API 在 C# 中套用條件格式,利用比較運算子與樣式選項建立規則,並將其套用至 Excel 試算表中的特定儲存格範圍。
條件格式化是試算表和資料處理軟體中的一項功能,可讓您根據特定條件或準則,對儲存格或資料套用特定的格式樣式或規則。 它讓您能夠視覺化地標示或突顯符合特定條件或標準的資料,使您更容易分析與理解試算表或表格中的資料。 無論您是處理現有的 Excel 檔案,還是從頭開始建立新的試算表,IronXL 都能提供全面的支援,協助您實作條件格式設定規則。
使用 IronXL 新增、檢索及移除條件格式。 在添加帶有樣式的條件格式時,您可以調整字型和字號、設定邊框與對齊方式,並定義背景圖案和顏色。 這些格式設定選項可與公式及儲存格資料格式等其他 Excel 功能無縫整合。
快速入門:輕鬆新增"小於"格式規則
立即開始使用 IronXL:僅需一行程式碼即可建立條件格式化規則,並將其套用至一組儲存格。 設定您的條件與風格,IronXL 將處理其餘事項。
-
using NuGet 套件管理員安裝 https://www.nuget.org/packages/IronXL.Excel
PM > Install-Package IronXL.Excel -
請複製並執行此程式碼片段。
var rule = workSheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.LessThan, "8"); workSheet.ConditionalFormatting.AddConditionalFormatting("A1:A10", rule); -
部署至您的生產環境進行測試
立即透過免費試用,在您的專案中開始使用 IronXL
簡化工作流程(5 個步驟)
- 下載用於條件格式的 C# 函式庫
- 載入現有的 Excel 試算表或建立新的試算表
- 使用
CreateConditionalFormattingRule方法建立條件格式化規則 - 使用
AddConditionalFormattingRule方法新增已建立的規則 - 使用
GetConditionalFormattingRules方法檢索現有規則
開始使用 IronXL
如何新增條件格式化規則?
條件格式化由一組規則與樣式組成,當儲存格符合指定規則條件時,這些規則與樣式便會套用。 樣式設定可包含字型與字號調整、邊框與對齊設定,以及背景圖案與顏色。 這些格式化功能與 IronXL 選取範圍及處理特定儲存格集合的能力完美整合。
若要定義規則,請使用 IronXL 提供的 CreateConditionalFormattingRule 方法。 將此方法所傳回的物件賦值給一個變數,並利用它來套用所需的樣式。 最後,請使用 ApplyConditionalFormattingRule 方法,同時提供所建立的規則及其應套用的儲存格範圍。 此方法類似於您透過程式碼管理試算表或操作其他 Excel 功能的方式。
有哪些比較運算子可用?
IronXL 支援一套完整的比較運算子,讓您能夠建立複雜的條件格式化規則。 這些運算子能與數值、日期,甚至在適當情況下與文字進行比對,並能無縫運作。 可用的規則如下:
NoComparison:預設值,用於不進行比對而僅套用格式時Between:突出顯示特定範圍內的數值NotBetween:標示超出指定範圍的數值Equal:匹配精確值NotEqual:排除特定值GreaterThan:標示高於閾值的數值LessThan:標示低於閾值的數值GreaterThanOrEqual:包含閾值LessThanOrEqual:包含閾值
如何設定條件格式化樣式?
在建立條件格式化規則時,IronXL 提供豐富的樣式設定選項。 您可以透過修改各種視覺屬性,自訂符合您條件的儲存格外觀。 以下範例示範如何建立規則並套用背景顏色樣式:
:path=/static-assets/excel/content-code-examples/how-to/conditional-formatting-add.cs
using IronXL;
using IronXL.Formatting.Enums;
WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Create conditional formatting rule
var rule = workSheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.LessThan, "8");
// Set style options
rule.PatternFormatting.BackgroundColor = "#54BDD9";
// Add conditional formatting rule
workSheet.ConditionalFormatting.AddConditionalFormatting("A1:A10", rule);
workBook.SaveAs("addConditionalFormatting.xlsx");
Imports IronXL
Imports IronXL.Formatting.Enums
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet
' Create conditional formatting rule
Private rule = workSheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.LessThan, "8")
' Set style options
rule.PatternFormatting.BackgroundColor = "#54BDD9"
' Add conditional formatting rule
workSheet.ConditionalFormatting.AddConditionalFormatting("A1:A10", rule)
workBook.SaveAs("addConditionalFormatting.xlsx")
Style 屬性不僅提供背景顏色設定,還可存取多種樣式選項。 您亦可修改圖案樣式、前景顏色及圖案填充效果,以建立更複雜的視覺指示符。 這種靈活性讓您能建立符合貴組織品牌形象的格式,或使特定資料模式能立即被辨識。
套用格式後會呈現什麼樣貌?
在
完成後
如何檢索現有的條件格式設定?
當您需要修改已包含格式設定規則的試算表,或希望分析套用至特定範圍的格式設定邏輯時,善用現有的條件格式設定至關重要。 IronXL 讓存取和修改這些現有規則變得輕而易舉。
若要擷取條件格式化規則,請使用 GetConditionalFormattingRule 方法。 所回傳的規則物件可能包含多個規則; 使用 RuleAtIndex 方法來存取特定項目。 檢索到的規則多數屬性無法修改,但您可以透過 Style 屬性調整 BackgroundColor。 此限制確保規則的核心邏輯保持完整,同時仍允許進行視覺上的自訂。
我可以在現有規則上修改哪些屬性?
在處理檢索到的條件格式化規則時,請了解哪些屬性可以進行修改。 主要可調整的屬性是背景顏色,這讓您能在不改變底層條件邏輯的情況下,更新視覺外觀。 以下範例展示如何檢索及修改現有規則:
:path=/static-assets/excel/content-code-examples/how-to/conditional-formatting-retrieve.cs
using IronXL;
WorkBook workBook = WorkBook.Load("addConditionalFormatting.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Create conditional formatting rule
var ruleCollection = workSheet.ConditionalFormatting.GetConditionalFormattingAt(0);
var rule = ruleCollection.GetRule(0);
// Edit styling
rule.PatternFormatting.BackgroundColor = "#B6CFB6";
workBook.SaveAs("editedConditionalFormatting.xlsx");
Imports IronXL
Private workBook As WorkBook = WorkBook.Load("addConditionalFormatting.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet
' Create conditional formatting rule
Private ruleCollection = workSheet.ConditionalFormatting.GetConditionalFormattingAt(0)
Private rule = ruleCollection.GetRule(0)
' Edit styling
rule.PatternFormatting.BackgroundColor = "#B6CFB6"
workBook.SaveAs("editedConditionalFormatting.xlsx")
當您需要更新試算表的視覺主題,同時保留嵌入條件格式化規則中的商業邏輯時,此方法特別有用。
如何存取集合中的多個規則?
在處理複雜的試算表時,您可能會遇到同一範圍或重疊範圍被套用多條條件格式化規則的情況。 GetConditionalFormattingRules 方法會傳回一個集合,該集合可能包含多條規則。 您可以使用標準的集合方法遍歷這些規則,或透過 RuleAtIndex 索引存取特定規則。 當處理來自不同來源且可能具有不同格式要求的資料時,此功能尤為實用。
在
完成後
如何移除條件格式化?
在某些情況下,您需要完全移除條件格式化規則。 這在準備資料以供匯出、簡化試算表維護,或當格式規則不再符合您當前的資料分析需求時,可能會有此必要。
若要移除條件格式化規則,請使用 RemoveConditionalFormattingRule 方法。 將目標規則的索引傳遞給此方法。 此操作對當前工作簿執行例而言是永久性的,但如有需要,您隨時可以重新載入原始檔案。
何時應移除條件格式化規則?
請在以下情況考慮移除條件格式化規則:
- 資料匯出:當匯出至不支援格式設定的各種格式時
- 效能優化:在處理大型資料集時,複雜的規則可能會影響效能
- 規則衝突:多條重疊的規則會造成混淆或產生意外結果
- 簡易分析:為自動化處理預先處理資料,此階段無需格式調整
- 範本製作:建立簡潔的範本供他人使用
:path=/static-assets/excel/content-code-examples/how-to/conditional-formatting-remove.cs
using IronXL;
WorkBook workBook = WorkBook.Load("addConditionalFormatting.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Remove conditional formatting rule
workSheet.ConditionalFormatting.RemoveConditionalFormatting(0);
workBook.SaveAs("removedConditionalFormatting.xlsx");
Imports IronXL
Private workBook As WorkBook = WorkBook.Load("addConditionalFormatting.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet
' Remove conditional formatting rule
workSheet.ConditionalFormatting.RemoveConditionalFormatting(0)
workBook.SaveAs("removedConditionalFormatting.xlsx")
CreateConditionalFormattingRule
AddConditionalFormatting
GetConditionalFormattingAt
CreateConditionalFormattingRule
AddConditionalFormatting
PatternFormatting
GetConditionalFormattingAt
GetRule
BackgroundColor
PatternFormatting
GetConditionalFormattingAt
GetRule(index)
RemoveConditionalFormatting
移除後,儲存格樣式會如何?
當您移除條件格式設定規則時,僅會移除條件格式設定——底層的儲存格資料及任何直接格式設定均維持不變。 儲存格將恢復其原始格式,其中包含直接套用至儲存格(而非透過條件格式化規則)的任何樣式。 若儲存格曾直接套用特定字型、邊框或底色(而非透過條件格式化),在移除條件格式化後,這些樣式仍會保留。
此功能可確保您的資料完整性,同時讓您完全掌控試算表的視覺呈現效果。 若需更進階的格式設定功能,請參閱 IronXL 的完整 API 參考文件,以了解所有可用的格式設定選項。
常見問題
如何在 C# 中為 Excel 儲存格新增條件格式?
IronXL 讓您能輕鬆地在 C# 中新增條件格式。首先,使用 CreateConditionalFormattingRule 方法,搭配您想要的比較運算子與數值,建立一則條件格式規則。 接著,使用 AddConditionalFormatting 方法將其套用至儲存格範圍。例如:var rule = workSheet.Co/nditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.LessThan, "8"); workSheet.Co/nditionalFormatting.AddConditionalFormatting("A1:A10", rule);
條件格式化規則支援哪些比較運算子?
IronXL 支援多種用於條件格式化規則的比較運算子,包括小於 (LessThan)、大於 (GreaterThan)、等於 (Equal)、不等於 (NotEqual) 等。您可在使用 CreateConditionalFormattingRule 方法建立規則時指定運算子,藉此依據不同條件(例如小於 8、大於 100 或等於特定文字)來標示儲存格。
我可以使用條件格式設定套用多種樣式嗎?
是的,IronXL 允許您透過條件格式設定規則套用全面的樣式。您可以調整字型與大小、設定邊框與對齊方式,並定義背景圖案與顏色。這些格式設定選項能與公式及儲存格資料格式等其他 Excel 功能無縫整合,讓您完全掌控儲存格在滿足特定條件時的顯示樣式。
如何從 Excel 檔案中擷取現有的條件格式設定規則?
IronXL 提供 GetConditionalFormattingAt 方法,用於從 Excel 檔案中擷取現有的條件格式化規則。這使您能夠檢視、修改或移除先前套用至特定儲存格範圍的規則,從而輕鬆管理並更新現有試算表中的條件格式化設定。
條件格式設定是否適用於新建立及現有的 Excel 檔案?
是的,無論您是處理現有的 Excel 檔案,還是從頭建立新的試算表,IronXL 皆提供全面的條件格式設定規則實作支援。您可以載入現有的試算表並新增條件格式,或建立新的工作簿,並在建置資料的同時套用格式設定規則。
我可以透過程式碼移除條件格式化規則嗎?
IronXL 讓您能夠透過程式碼新增、擷取及移除條件格式設定規則。這使您能完全掌控 Excel 檔案中的條件格式設定管理,並能根據應用程式的需求,動態更新或清除格式設定。

