如果满足条件

时间:2019-01-17 03:14:42

标签: excel

我对Excel中的条件格式有疑问。

如果在单元格A1中写有“ 5 / task”,我希望基于单词“ task”突出显示单元格A1:E1。我知道我可以使用FIND突出显示单个单元格,但是如何突出显示其他四个单元格呢?我还想将其扩展到工作表中的所有位置,因此,如果在单元格D10中写入“ 8 /任务”,则单元格D10:K10也将突出显示。

2 个答案:

答案 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个条件:

  1. ISNUMBER(MATCH("task",$A1:A1,1):检查包含$A1:A1的单元格的动态范围# / task Edit -条件格式中不需要。
  2. 最容易理解的方法。例如,假设单元格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():减去所讨论的当前列。因此对于单元格B14 - 2 = 2C14 - 3 = 1;以及D14 - 4 = 0等。
    • >=1:如果上一步的结果大于1,则应突出显示单元格。因此B1C1被突出显示,而D1未突出显示。
  3. COLUMN()>=MATCH("task",$A1:A1,1):确保突出显示仅向右延伸。如果排除了此条件,则A1也将突出显示。

enter image description here

编辑:

假设您对不同的“任务”有不同的规则,并且需要匹配特定的文本“任务”,请尝试以下操作:

=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))

enter image description here

另一种样子:

enter image description here

答案 1 :(得分:-1)

尝试关注

=ISNUMBER(SEARCH("Task",$A1))

Screenshot