Excel条件格式化未知问题

时间:2017-05-04 05:21:56

标签: excel formatting formula

我的excel条件格式有问题。它似乎只在一列上工作,无论它是否移动并且规则中的列都发生了变化。 我的规则如下,我试图将其分隔以使其更具可读性,但它显然不在实际的规则框中:

=IF(EXACT(BQ2,"Diamond"), //start if
  OR(ISNUMBER(SEARCH("CRATE%",BM2,1)),ISNUMBER(SEARCH("CDMG%",BM2,1))), //if true
 IF(EXACT(BQ2,"Square"), //if false start another if
  OR(ISNUMBER(SEARCH("RES%",BM2,1)),ISNUMBER(SEARCH("CDMG%",BM2,1))), //if true
 IF(EXACT(BQ2,"Triangle"), //if false start another if
  OR(ISNUMBER(SEARCH("CRATE%",BM2,1)),ISNUMBER(SEARCH("RES%",BM2,1)))))) //if true

我的规则是,如果单元格的值为"Diamond",则单词"CRATE%""CDMG%"会触发单元格变为蓝色,

如果"Square",则"RES%""CDMG%"会触发单元格变为蓝色。

如果"Triangle",则"RES%""CRATE%"会触发单元格变为蓝色。

三个Shape值以及它们检查的单词位于同一行。它们每行都会改变,但只能在这三种形状和几个单词之间改变。

同样的格式也出现在接下来的两列中,但接下来的两列(接收相同的规则和调整的列名)将不起作用。

我做了太多的计算,或者我的规则是错误的,或者它是否是另一个问题?

以下是表格中数据的屏幕截图。如您所见,列BQ工作正常,但即使在BR上使用相同的规则并且更改BQ2-> BR2和BM2-> BN2,第二行也不起作用。第三个也不会。顶部格式框用于第一列,底部用于第二列。 enter image description here 第二个规则只是第一个规则的NOT版本,用于在“正确”时反转蓝色框。我确定这是扭转它的坏方法,但这不是我在这里的目的。

1 个答案:

答案 0 :(得分:1)

我在屏幕截图中制作了BM,BN,BQ和BR列的副本,并为列BM和BQ创建了一组规则,并为您的问题中描述了第二组BN和BR规则。两者似乎都按预期工作。

适用于BQ1至BQ16单元格的BM / BQ规则:

=IF(EXACT(BQ1,"Diamond"),OR(ISNUMBER(SEARCH("CRATE%",BM1,1)),ISNUMBER(SEARCH("CDMG%",BM1,1))),IF(EXACT(BQ1,"Square"),OR(ISNUMBER(SEARCH("RES%",BM1,1)),ISNUMBER(SEARCH("CDMG%",BM1,1))),IF(EXACT(BQ1,"Triangle"),OR(ISNUMBER(SEARCH("CRATE%",BM1,1)),ISNUMBER(SEARCH("RES%",BM1,1))))))

=NOT(IF(EXACT(BQ1,"Diamond"),OR(ISNUMBER(SEARCH("CRATE%",BM1,1)),ISNUMBER(SEARCH("CDMG%",BM1,1))),IF(EXACT(BQ1,"Square"),OR(ISNUMBER(SEARCH("RES%",BM1,1)),ISNUMBER(SEARCH("CDMG%",BM1,1))),IF(EXACT(BQ1,"Triangle"),OR(ISNUMBER(SEARCH("CRATE%",BM1,1)),ISNUMBER(SEARCH("RES%",BM1,1)))))))

适用于BR1至BR16小区的BN / BR规则:

=IF(EXACT(BR1,"Diamond"),OR(ISNUMBER(SEARCH("CRATE%",BN1,1)),ISNUMBER(SEARCH("CDMG%",BN1,1))),IF(EXACT(BR1,"Square"),OR(ISNUMBER(SEARCH("RES%",BN1,1)),ISNUMBER(SEARCH("CDMG%",BN1,1))),IF(EXACT(BR1,"Triangle"),OR(ISNUMBER(SEARCH("CRATE%",BN1,1)),ISNUMBER(SEARCH("RES%",BN1,1))))))

=NOT(IF(EXACT(BR1,"Diamond"),OR(ISNUMBER(SEARCH("CRATE%",BN1,1)),ISNUMBER(SEARCH("CDMG%",BN1,1))),IF(EXACT(BR1,"Square"),OR(ISNUMBER(SEARCH("RES%",BN1,1)),ISNUMBER(SEARCH("CDMG%",BN1,1))),IF(EXACT(BR1,"Triangle"),OR(ISNUMBER(SEARCH("CRATE%",BN1,1)),ISNUMBER(SEARCH("RES%",BN1,1)))))))

正如您所看到的,在第二个规则集中,我只用BR替换了BN和BQ。它在这里工作正常。enter image description here 我希望这适合你。