我怎样才能应用条件格式的规则,除了第一行的所有行?
我的问题是关于在Excel中编程(创build条件格式规则的公式)。
如果我在格式条件公式中使用以下公式:
=INDIRECT("A"&ROW())>1
并应用于所有行包括 Apply to
字段中具有以下范围的第一行:
$A:$F
结果:效果很好。
但是我想把它应用到除第一行以外的所有行。 所以我改变了:
=AND(INDIRECT("A"&ROW())>1;ROW()>1)
结果:现在它在任何行都不起作用。
上述公式中我的错误是什么?
起初你的问题很混乱。 您可以通过将条件格式设置规则应用于$A:$F
而不是$A$2:$F$1048576
来将条件格式设置规则应用于除第一行以外的所有行。
但是我怀疑你想把它应用到列$A:$F
所有行,但是它应该在testing条件时排除第1行。
如果是这样,你的问题是INDIRECT
的不稳定行为。 但是这里不需要INDIRECT
。 你的第一个条件也可以写成:
=($A1>1)
这是因为甚至条件格式化将通过使用$
或省略$
来尊重固定和可变单元格引用之间的区别。 所以这个公式适用于$A:$F
将检查第一行中的$A1>1
,第二行中的$A2>1
,第三行中的$A3>1
等等。 这是因为$A
列固定使用$
,所以是列A
绝对引用,但行号1
不是固定的,所以是对实际行的相对引用。
适用于$A:$F
这将具有与您的INDIRECT
公式相同的行为,即:如果此行中第一个单元格的值大于1,则格式化当前行。
然后排除第一行是可能的使用:
=AND($A1>1,ROW()>1)
在条件格式中使用相对单元格引用时的一个缺点是,如果应用范围发生更改,则必须更改它们。 例如,在这种情况下,如果有人在第1行上插入一行。
但即使如此, INDIRECT
也没有必要。 那么我们可以使用INDEX
– MATCH
:
=(INDEX($A:$A,ROW())>1)
和
=AND(INDEX($A:$A,ROW())>1,ROW()>1)