You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

按服务与月份统计唯一用户的公式求解

按来源和月份统计唯一用户数的解决方案

问题背景

需要按来源和月份维度统计唯一用户数量,尝试了复杂数组公式但未得到预期结果,最后使用的公式如下:

=ArrayFormula(SUM(IF(L15=Data!$B$2:$B$200,1/(COUNTIFS(Data!$B$2:$B$200,$L15,
Data!$J$2:$J$200,$A$14,Data!$C$2:$C$200,Data!$C$2:$C$200)),0)))

参数说明

  • L15:当前统计的目标来源名称
  • Data!$B$2:$B$200:数据表中的来源数据列
  • A14:当前统计的目标月份名称
  • Data!$J$2:$J$200:数据表中的月份数据列
  • Data!$C$2:$C$200:数据表中的用户数据列

数据示例

#来源用户月份
1WebsiteMichael GovenderJan-23
2TwitterMichael GovenderFeb-23
3WebsiteAlison NaidooFeb-23
4TwitterMathew NaidooMar-23
5TwitterMeagan ReddyJan-23
6InstagramDavid NaidooFeb-23
7WebsiteTyron MadurayMar-23
8InstagramClare MurtleJan-23
9TwitterHellen PumpkinMar-23
10FacebookTyron MadurayFeb-23
11InstagramElaine HarleyFeb-23
12TwitterMichael GovenderJan-23

解决方案

1. 最简方案:使用COUNTUNIQUEIFS(新版Excel/Google Sheets适用)

这个函数专为多条件唯一值统计设计,无需数组公式,语法直观:

=COUNTUNIQUEIFS(Data!$C$2:$C$200, Data!$B$2:$B$200, L15, Data!$J$2:$J$200, A14)

直接指定用户列,再添加来源等于L15、月份等于A14两个条件,即可自动统计符合条件的唯一用户数。

2. 兼容旧版Excel:使用SUMPRODUCT

如果无法使用COUNTUNIQUEIFS,可以用SUMPRODUCT实现相同逻辑:

=SUMPRODUCT((Data!$B$2:$B$200=L15)*(Data!$J$2:$J$200=A14)/COUNTIFS(Data!$B$2:$B$200, Data!$B$2:$B$200, Data!$J$2:$J$200, Data!$J$2:$J$200, Data!$C$2:$C$200, Data!$C$2:$C$200))

原理:先筛选出符合来源和月份的行,再用1/COUNTIFS计算每个用户在对应来源+月份下的出现频次,求和后得到唯一用户数。

3. 修正你原有的数组公式

原公式的问题在于IF条件仅判断了来源,未同时限定月份,导致计算范围错误。修正后公式:

=ArrayFormula(SUM(IF((Data!$B$2:$B$200=L15)*(Data!$J$2:$J$200=A14), 1/COUNTIFS(Data!$B$2:$B$200, L15, Data!$J$2:$J$200, A14, Data!$C$2:$C$200, Data!$C$2:$C$200), 0)))

调整IF的判断条件为同时匹配来源和月份,COUNTIFS也明确限定两个维度,确保计算的是目标范围内的用户出现次数。


内容的提问来源于stack exchange,提问作者user21357942

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 14:10:30