我需要在excel表中计算唯一项目的数量(这里我有组织的名称)...我使用了以下脚本但我不能引入多个输入来同时计算所有这些。
=SUMPRODUCT((A27:A128<>"")/COUNTIF(A27:A128,A27:A128&""))
我想介绍一下A27:A128,A145:A156要检查和计算的细胞列表。
有谁知道我怎么算他们?是否还有另一个要调用的函数?
答案 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列检查值时,如果某个值出现在已检查区域的内部和外部,则公式可能会或可能不会失败,具体取决于值的排序。