首页 > 解决方案 > Excel 365 函数计算原始列表中数组列表的出现次数

问题描述

我在“缺陷”表中有公司名称列表。我使用该函数利用数组列表在名为“报告”的工作表中建立了这些公司的唯一列表。

=SORT(UNIQUE(Defects!E:E,,TRUE),,1)

这很好用。由于数组是动态的,它可以增长和缩小。我想计算数组中单个项目出现在“缺陷”表中的次数。

在“缺陷”表中 这是我的完整列表

  E     
1 Acme        
2 Gadget
3 Widget      
4 Acme
5 Widget
6 Widget

这就是我在“报告”表中想要的。

  Company     Count 
1 Acme        2
2 Gadget      1
3 Widget      3

我似乎无法创建一个将数组中的特定值作为 COUNT 或 COUNTIF 函数的输入的函数。这个函数给了我所有的值 1。

=COUNT(MATCH(A20,Defects!E:E,0))

一个简单的 COUNTIF 给我一个错误并将公式转换为文本。

=COUNTIF(Defects!E:E,A1))

任何帮助表示赞赏。

标签: arraysexcelcountformula

解决方案


将 LET 和 CHOOSE 与 COUNTIFS 一起使用:

=LET(x,SORT(UNIQUE(E1:E6)),CHOOSE({1,2},x,COUNTIFS(E:E,x)))

在此处输入图像描述

或者,如果您真的想要完整的列引用:

=LET(y,E:E,x,SORT(UNIQUE(FILTER(y,y<>""))),CHOOSE({1,2},x,COUNTIFS(y,x)))

推荐阅读