计算Excel工作表中的唯一项目

时间:2013-12-09 13:57:51

标签: excel count unique

我需要在excel表中计算唯一项目的数量(这里我有组织的名称)...我使用了以下脚本但我不能引入多个输入来同时计算所有这些。

 =SUMPRODUCT((A27:A128<>"")/COUNTIF(A27:A128,A27:A128&""))

我想介绍一下A27:A128,A145:A156要检查和计算的细胞列表。

有谁知道我怎么算他们?是否还有另一个要调用的函数?

2 个答案:

答案 0 :(得分:0)

非常简单........使用“帮助”列,比如列 D 在D1中输入:

= A27 并向下复制到D102。

在D103中输入:

= A145 并向下复制到D114

最后使用:

=SUMPRODUCT((D1:D114<>"")/COUNTIF(D1:D114,D1:D114&""))

答案 1 :(得分:0)

您需要的公式如下所示

=SUM( IF( MATCH(A27:A128,A:A,0)=ROW(A27:A128) , 1 , 0 ) , 
      IF( MATCH(A145:A156,A:A,0)=ROW(A145:A156) , 1 , 0 ))

并且像这样工作:

对于您要检查的每个区域,您需要以下构造:

IF( MATCH(A27:A128,A:A,0)=ROW(A27:A128) , 1 , 0 )

这会尝试将A27到A128中的每个单元格匹配到整个A列,并检查找到值的行是否等于当前行。如果是这种情况,我们发现第一次出现,如果是重复出现,则行将更小(因为MATCH总是返回找到值的第一行)。现在,如果我们发现第一次出现,IF返回1,否则为0。

SUM只是总结每一个if(也就是说,如果你有第三个区域等等,只需继续添加更多的IF构造,你就完成了),导致每次出现一个值时总计为1并且每次跟进都为0 - 您将得到您的唯一值。

注意:整个公式是矩阵公式。将它放入单元格后,您不能同时按ENTER键结束编辑,但同时使用 STRG + SHIFT + ENTER 。这种方式excel使用{} -brackets围绕公式,您无法手动输入。它会改变excel评估公式的方式,如果您将其作为普通公式进行尝试,则可能会出错。

此外,当对整个A列检查值时,如果某个值出现在已检查区域的内部和外部,则公式可能会或可能不会失败,具体取决于值的排序。