Excel函数为SELECT DISTINCT .. WHERE

我正在尝试使用基于多列的函数来筛选Excel工作表中的数据。 例如,如果B列有'* ABC *',我想计算A列中唯一值的数量。

AB --- --- 1 xyz 1 abc 2 ABCD 3 AB 4 ABCE 4 qwe 4 ABC 5 xyzABC 

对于上面的例子,我期待答案3,因为匹配'* ABC *'中唯一值的数量是2,4和5 => 3个唯一值。

索引匹配只返回第一个结果,我无法弄清楚如何使用Countifs来join这两个条件 – 唯一和通配符匹配。

作为一个数组公式:

 =SUM(IF(ISNUMBER(SEARCH("ABC",B1:B8)),1/COUNTIFS(A1:A8,A1:A8,B1:B8,"*ABC*"))) 

作为一个数组公式,在退出编辑模式时,需要使用Ctrl-Shift-Enter而不是Enter来确认。 如果正确完成,则Excel将在公式周围放置{}