我想为整个文档创建静态条件格式(例如应用于A1:Z999),如果在中间添加新行,则不会被新的中间条件格式替换。
详细说明:
作为一个例子,我有以下表格内容
| A | B | C
----------------------
1 | A.1 | | FIRST LEVEL ROW
2 | | B.2 | SECOND LEVEL ROW
3 | | | C.3 THIRD LEVEL ROW
4 | | | C.4 THIRD LEVEL ROW
5 | | B.5 | SECOND LEVEL ROW
6 | | | C.6 THIRD LEVEL ROW
7 | A.7 | | FIRST LEVEL ROW
8 | | B.8 | SECOND LEVEL ROW
9 | | | C.9 THIRD LEVEL ROW
10 | | | C.10 THIRD LEVEL ROW
我现在希望所有具有一种缩进子行的行以特定方式着色,例如
我可以通过条件格式
来做到这一点 FIRST LEVEL
* apply if : AND(LENGTH($A1) > 0; LENGTH($B2) > 0)
* apply to : $A1:$C10
* modify : dark grey background color
SECOND LEVEL
* apply if : AND(LENGTH($B1) > 0; LENGTH($C2) > 0)
* apply to : $A1:$C10
* modify : light grey background color
这很顺利,没有任何问题。
但是,如果我现在在第7行之前插入两个新的空行(创建新的第7行和第8行,并将包含A.7的第7行转移到第9行),则条件格式由新条目扩展,插入新规则中间行7/8并分成原始行...
FIRST LEVEL (now split)
* apply if : AND(LENGTH($A1) > 0; LENGTH($B2) > 0)
* apply to : $A$1:$C$5;$A$9:$C$12
* modify : dark grey background color
SECOND LEVEL (now split)
* apply if : AND(LENGTH($B1) > 0; LENGTH($C2) > 0)
* apply to : $A$1:$C$5;$A$9:$C$12
* modify : light grey background color
FIRST LEVEL (intermediate)
* apply if : AND(LENGTH($A6) > 0; LENGTH($B9) > 0)
* apply to : $A$6:$C$8
* modify : dark grey background color
SECOND LEVEL (intermediate)
* apply if : AND(LENGTH($B6) > 0; LENGTH($C9) > 0)
* apply to : $A$6:$C$8
* modify : light grey background color
这不再正确,因为它不再检查邻接行(例如,错误地使用A6 / B9)。因此,每次添加新行时都必须修改条件格式,以便恢复应用于所有行的原始行为。
长话短说:有没有办法告诉Excel使用STATIC条件格式并简单地扩展它应用的区域而不是添加新的中间区域?
使用Excel 2013
答案 0 :(得分:0)
通过应用整列引用轻松避免:
对于Range而不是$A:$C
, $A1:$C10
并一次设置一行的规则,即只测试哪个列包含值,例如FIRST LEVEL
:
=AND($A1<>"",COUNTA($A1:$C1))
其中AND是为了避免格式化所有ColumnsA:C为空的行。