我试图找出我的每个同事正在处理多少个客户端,然后将用于其他计算。我的电子表格中有一列是每个同事的姓名首字母,用逗号分隔(这是我无法控制的),目前我可以点击并拖动公式
< code > = COUNTIF(SPLIT($B2,“,”,“name here”),
效果很好。然而,我需要把它转换成一个数组公式,这样做一切都会中断。出现的情况是,COUNTIF正在通过SPLIT(array,“,”)创建的整个2D数组进行计数,并给出单个总计,但我希望它通过每一行进行计数,一次一个,每一行都有一个总计。
我附上了一个电子表格,在单元格O2中尝试数组公式。
(顺便说一句,一个更简单的解决方案似乎是在首字母列中搜索同事的首字母,因为它们被设置为唯一的,但是一个同事有首字母“J”,因此会出现在“LJ”中,我看不出有通配符可以解决这个问题。)
示例文件
请尝试以下公式,粘贴到 C2 中:
=阵列方程((B2:B24)-LEN(替代(B2:B24,C1:M1,“”))/LEN(C1:M1))
笔记:
另一种方法是使用公式:
=数组公式(mmult(--(IFERROR(SPLIT($B$2:$B$24,“,”)=C1,false)),arrayformula(SIGN(ROW(INDIRECT(“a1:a”)
在C2中并将其复制到范围C2: M2
笔记:
mmult
技巧按行对范围求和mmult
公式将更好地工作,但它会减慢您的计算速度。