Excel 2007 条件格式未正确使用提供的自定义公式

Excel 2007 条件格式未正确使用提供的自定义公式

在 Excel 2007 中,如果某行是奇数,我想有条件地为其着色,然后根据该行中的特定单元格(在 E 列中)是包含数字(绿色)还是空(红色)来改变颜色。例如,如果 E15 的值为 2 而 E13 没有条目,则我希望第 15 行是绿色,第 13 行是红色。

我的两个公式是:
染成红色:
=IF((MOD(ROW(),2) = 1),NOT(ISNUMBER(INDIRECT("$E$"&ROW()))), FALSE)
染成绿色:
=IF((MOD(ROW(),2) = 1),ISNUMBER(INDIRECT("E"&ROW())), FALSE)

如果我将这些公式粘贴到工作表的单元格中,我会得到预期值。对于第 15 行,“红色”方程式为假,“绿色”方程式为真。对于第 13 行,“红色”方程式为真,“绿色”方程式为假。但是,如果我在条件格式中使用公式功能中的这些公式,我的所有行都是红色的,有什么想法吗?

答案1

你的问题是INDIRECT。它无法很好地与你的条件公式配合使用,这似乎是 的某种限制INDIRECT

但是,我认为您不需要它。如果我正确理解了您的要求,您只需将绿色条件公式更改为=IF((MOD(ROW(),2) = 1),ISNUMBER($E1), FALSE)。使用$E1将强制公式对每一行重新评估,因此它变成:

  • =IF((MOD(ROW(),2) = 1), ISNUMBER($E1), FALSE)对于 E1
  • =IF((MOD(ROW(),2) = 1), ISNUMBER($E2), FALSE)对于 E2
  • =IF((MOD(ROW(),2) = 1), ISNUMBER($E3), FALSE)对于R3
  • ETC。

类似地,你可以用以下公式替换红色公式=IF(MOD(ROW(),2) = 1,NOT(ISNUMBER("$E1)), FALSE)

相关内容