假设我有一个名为colors的列,其中1000个单元格填充了值。一些单元格中包含单词blue
。在另一列中,我有与颜色列对应的唯一标识符。例如,Blue
可以具有与01,02,04或05相关联的值。单词blue
在我的名称列中出现20次。我可以通过哪种方式找到与blue
一词相关联的唯一标识符的数量?
在上面列出的示例中,答案应返回4.
我用来实现此目的的当前方法是使用数据透视表。我过滤掉名称列中不包含单词blue
的任何值。然后我计算出我的数据透视表中显示的所有唯一标识符。
编辑:注意blue
如何出现8次,但它只有与之关联的值1,2,3和4。如何创建一个函数,找出与蓝色相关的值?
答案 0 :(得分:0)
一个选项:
在支持Power Pivot的Excel版本中,将数据添加到数据模型,构建数据透视表并使用" Distinct Count"作为价值的汇总。
如果没有Power Pivot,请使用颜色字段下的值字段(字段的错误措辞,抱歉)构建一个常规数据透视表,然后在数据透视表的颜色列上使用Countif。
答案 1 :(得分:0)
假设您的数据位于A1:B21
,请尝试:
在D1:F1
输入这些ArrayFormulas
FormulaArrays
同时按下 CTRL + SHIFT + ENTER 如果输入正确,将在公式周围看到 {
和 }
在D2
中 - 返回Colors
&的唯一组合列表Values
:
=IFERROR(
INDEX($A$2:$A$21&$B$2:$B$21,
MATCH(0,COUNTIF($D$1:$D1,$A$2:$A$21&$B$2:$B$21),0)*1),"")
在E2
中 - 返回Colors
的唯一列表:
=IFERROR(
INDEX($A$2:$A$21,
MATCH(0,COUNTIF($E$1:$E1,$A$2:$A$21),0)*1),"")
在F2
中 - 返回合并Colors
&的合并次数每个Values
{/ 1}} Color
=COUNTIF($D$2:$D$21,$E2&"*")
然后将ArrayFormulas
复制到D2:F2
直到最后一行数据(即第21行)
如果需要,可以隐藏列D
...
答案 2 :(得分:-1)
除了第一条评论中的答案外,您还可以使用以下内容进行过滤(未经测试):
= SUMPRODUCT( IFERROR(1 / COUNTIFS(A2:A21, "Blue", B2:B21, B2:B21), 0) )