我对Excel中的条件格式有疑问。
如果在单元格A1中写有“ 5 / task”,我希望基于单词“ task”突出显示单元格A1:E1。我知道我可以使用FIND突出显示单个单元格,但是如何突出显示其他四个单元格呢?我还想将其扩展到工作表中的所有位置,因此,如果在单元格D10中写入“ 8 /任务”,则单元格D10:K10也将突出显示。
答案 0 :(得分:0)
假设突出显示的区域之间没有重叠,并且假设数字和正斜杠之间有空格,则可以根据以下规则使用CF:
=AND(ISNUMBER(MATCH("task",$A1:A1,1)),LEFT(INDEX($A1:A1,,MATCH("task",$A1:A1,1)),FIND(" ",INDEX($A1:A1,,MATCH("task",$A1:A1,1))))+MATCH("task",$A1:A1,1)-COLUMN()>=1,COLUMN()>=MATCH("task",$A1:A1,1))
更详细地讲,外部AND
具有3个条件:
ISNUMBER(MATCH("task",$A1:A1,1)
:检查包含$A1:A1
的单元格的动态范围# / task
。B1
包含2 / task
。
LEFT(INDEX($A1:A1,,MATCH("task",$A1:A1,1)),FIND(" ",INDEX($A1:A1,,MATCH("task",$A1:A1,1))))
:在# / task
中找到B1
单元格,并在第一个空格的左侧提取文本,返回2
。+MATCH("task",$A1:A1,1)
:添加带有# / task
的单元格的列号,即+ 2 = 4
。-COLUMN()
:减去所讨论的当前列。因此对于单元格B1
,4 - 2 = 2
; C1
,4 - 3 = 1
;以及D1
,4 - 4 = 0
等。>=1
:如果上一步的结果大于1,则应突出显示单元格。因此B1
和C1
被突出显示,而D1
未突出显示。COLUMN()>=MATCH("task",$A1:A1,1)
:确保突出显示仅向右延伸。如果排除了此条件,则A1
也将突出显示。编辑:
假设您对不同的“任务”有不同的规则,并且需要匹配特定的文本“任务”,请尝试以下操作:
=AND(LEFT(INDEX($A1:A1,,AGGREGATE(14,6,COLUMN($A1:A1)/ISNUMBER(SEARCH("task",$A1:A1)),1)),FIND(" ",INDEX($A1:A1,,AGGREGATE(14,6,COLUMN($A1:A1)/ISNUMBER(SEARCH("task",$A1:A1)),1))))+AGGREGATE(14,6,COLUMN($A1:A1)/ISNUMBER(SEARCH("task",$A1:A1)),1)-COLUMN()>=1,COLUMN()>=AGGREGATE(14,6,COLUMN($A1:A1)/ISNUMBER(SEARCH("task",$A1:A1)),1))
另一种样子:
答案 1 :(得分:-1)