使用Epplus进行条件格式化更改单元格颜色

3
我将使用EPPlus创建Excel电子表格,我的目标是根据 F列 中存在的值来着色单元格。 条件格式
//Orange
var conditionalFormattingRule01 = worksheet.ConditionalFormatting.AddExpression(worksheet.Cells[inital_line, 1, last_line, final_column]);
conditionalFormattingRule01.Formula = "($F9<=15)";
conditionalFormattingRule01.Style.Fill.PatternType = ExcelFillStyle.Solid;
conditionalFormattingRule01.Style.Fill.BackgroundColor.Color = Color.FromArgb(255, 192, 0);

//Yellow
var conditionalFormattingRule02 = worksheet.ConditionalFormatting.AddExpression(worksheet.Cells[inital_line, 1, last_line, final_column]);
conditionalFormattingRule02.Formula = "AND($F9>15;$F9<=30)";
conditionalFormattingRule02.Style.Fill.PatternType = ExcelFillStyle.Solid;
conditionalFormattingRule02.Style.Fill.BackgroundColor.Color = Color.FromArgb(255, 239, 153);

//Blue
var conditionalFormattingRule03 = worksheet.ConditionalFormatting.AddExpression(worksheet.Cells[inital_line, 1, last_line, final_column]);
conditionalFormattingRule03.Formula = "AND($F9>30;$F9<=60)";
conditionalFormattingRule03.Style.Fill.PatternType = ExcelFillStyle.Solid;
conditionalFormattingRule03.Style.Fill.BackgroundColor.Color = Color.FromArgb(155, 194, 230);

//Green
var conditionalFormattingRule04 = worksheet.ConditionalFormatting.AddExpression(worksheet.Cells[inital_line, 1, last_line, final_column]);
conditionalFormattingRule04.Formula = "($F9>60)";
conditionalFormattingRule04.Style.Fill.PatternType = ExcelFillStyle.Solid;
conditionalFormattingRule04.Style.Fill.BackgroundColor.Color = Color.FromArgb(182, 215, 168);

//Red
var conditionalFormattingRule05 = worksheet.ConditionalFormatting.AddExpression(worksheet.Cells[inital_line, 1, last_line, final_column]);
conditionalFormattingRule05.Formula = "($F9=\"Overdue\")";
conditionalFormattingRule05.Style.Fill.PatternType = ExcelFillStyle.Solid;
conditionalFormattingRule05.Style.Fill.BackgroundColor.Color = Color.FromArgb(234, 153, 153);

打开文件时的提示信息:

我们发现“FileName.xlsx”中的一些内容存在问题。您是否希望我们尽可能地恢复?如果您信任此工作簿的来源,请单击“是”。

我不明白我的公式出了什么错误。

1个回答

2

在AND公式中,将分号替换为逗号,例如:

conditionalFormattingRule02.Formula = "AND($F9>15,$F9<=30)";
...
conditionalFormattingRule03.Formula = "AND($F9>30,$F9<=60)";

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接