我使用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 回答
尝试从
Formula
删除=
标志 .通过添加
=
,它将导致公式显示为==IF(EXACT...
,这是无效的 . 条件格式的公式不与=
开头一起存储 . 如果这仍然适用于Excel 2016,也许它接受/忽略额外的=
?