Excel:为什么此条件格式设置公式不起作用?

时间:2018-05-12 17:12:02

标签: excel excel-formula conditional-formatting

我有一个Excel电子表格(不要问),带有标题第1天第2天第3天的4x6表格总计。但是,公式会根据日期更改总计的位置,因此在任何时候第3天都可以删除,而是替换为总计如果日期检测到我们只有第2天,那么我们还不需要显示第3天的标题。

我想使用条件格式以某种方式设置总计下的所有内容,因此我为选项使用公式确定要格式化的单元格选项编写了此公式:

=IF(INDIRECT(CONCATENATE(CHAR(COLUMN()+64), 1)) = "Total", TRUE, FALSE)

这应该格式化其列第一行中的单元格等于" Total"的任何单元格。但是,它根本就没有任何样式!

要进行问题排查,我尝试只选择一列(即 C )并将修改后的规则应用于该列:

=IF(INDIRECT(CONCATENATE("C", 1)) = "Total", TRUE, FALSE)

......它奏效了!然后,我尝试将第一个公式放入单元格中,并且正确显示 TRUE FALSE 。一切似乎都有效,但由于某种原因,我无法弄清楚条件格式永远不会适用。

有人可以解释一下原因吗?

PS在问题中我写了一个简化的例子,在真实的东西中我有31天而不是3天,所以单独浏览每一列将是一个很大的麻烦

1 个答案:

答案 0 :(得分:0)

INDIRECT(CONCATENATE(CHAR(COLUMN()+64), 1))可能是我想到的第一行和同一列中引用单元格的最糟糕的方式。

而不是:

INDIRECT(CONCATENATE(CHAR(COLUMN()+64), 1)) = "Total"

尝试此操作(例如,对于A列中的条件格式设置规则,并将规则应用于您需要的其他地方):

A$1 = "Total"

这两个公式具有相同的效果。