首页 文章

如何使用EPPlus for Excel 2010添加条件格式

提问于
浏览
0

我使用Epplus库将条件格式添加到现有的Excel电子表格中,代码如下:

var conditionalFormatting = worksheet.Cells[address].ConditionalFormatting.AddExpression();
conditionalFormatting.Formula = $"=IF(EXACT(A1, \"\"), IF(EXACT(B1, \"\"), TRUE, FALSE), FALSE)";
conditionalFormatting.Style.Fill.BackgroundColor = errorColor;

此代码似乎工作正常,因为当我使用Excel 2016打开电子表格时,我可以看到相应的行为 .

My Question

在使用Excel 2010打开相同的电子表格时,我收到以下消息:

Excel在'Spreadsheet.xlsx'中找到了不可读的内容 . 您想要恢复此工作簿的内容吗?

恢复内容:Excel提示:

已移除的功能:/xl/worksheets/sheet1.xml部分的条件格式

这件事发生在其他人身上吗?我认为EPPlus库应该可以与Excel 2007一起使用

有谁知道任何解决方法?

1 回答

  • 1

    尝试从 Formula 删除 = 标志 .

    conditionalFormatting.Formula = $"IF(EXACT(A1, \"\"), IF(EXACT(B1, \"\"), TRUE, FALSE), FALSE)";
    

    通过添加 = ,它将导致公式显示为 ==IF(EXACT... ,这是无效的 . 条件格式的公式不与 = 开头一起存储 . 如果这仍然适用于Excel 2016,也许它接受/忽略额外的 =

相关问题