您可以在IF语句的单元格中使用通配符吗?

时间:2018-06-20 08:46:14

标签: excel excel-formula array-formulas

我正在尝试建立一个表格,以便对大约50个不同特征的网站进行非常快速的分类。我想过但不确定是否可行的方法如下。

  • Worksheet A:每个单元的原始数据约为100R x 50C 描述该行的特征,其中最后一列是 总体分类。

  • Worksheet B:约5R x 50C的表格,各列 对应于Worksheet A中的列。

一行Worksheet B类似于:

* | * | * | 1 | * | 3 | * | Y | * | ... | * | * | * |

Worksheet A中与此数据相对应的一行看起来像这样:

A | B | C | 1 | 5 | 3 | Z | Y | 1 | ... | F | 2 | X | High Priority 

在星号表示通配符的地方,我不在乎内容是什么。所有其他单元都是必需条件。然后,我正在考虑在最后一列上应用数组公式以进行分类。像这样:

{=IF(AND(A2:BV2='Worksheet B'!$A$2:$BV$2), "High Priority", "Low Priority")}

但是Excel将星号作为文字字符串内容,并将其评估为FALSE

有没有办法使这项工作有效?还是一种简单易行的替代方法?

2 个答案:

答案 0 :(得分:0)

可能类似的事情可能起作用:

{=IF(SUMPRODUCT(--(NOT(ISERROR(MATCH(A2:BV2,'Worksheet B'!$A$2:$BV$2,0)))))=49,"High Priority","Low Priority")}

以下示例数据的结果:

enter image description here

答案 1 :(得分:0)

我以合理而优雅的解决方案深入了解了这一问题。如果存在无法解决问题的情况,请发表评论。

={IF(SUM(IF(A2:BV2='Worksheet B'!A2:BV2,0,1))=COUNTIF('Worksheet B'!A2:BW2,"x"),"Top Priority", "Low Priority")}

x用于那些我不在乎结果的单元格。因此,我在上面的单元格中使用“ x”而不是“ *”,使得Worksheet B更像是:

x | x | x | 1 | x | 3 | x | Y | x | ... | x | x | x |

如果有人感兴趣,该公式将计算所有不匹配的元素,然后将它们与结果中带有“ x”的单元格数量进行比较。如果这两个数字相等,则不匹配的数目等于我们不在乎的单元数。