无法在现有COUNTIFS组合公式中应用COUNTUNIQUE函数求助
解决方案:统计符合条件的唯一候选人数量
原公式问题分析
原公式通过两次COUNTIFS累加,统计的是符合条件的项目总数,但无法对同一候选人负责的多个项目去重。直接给原公式套COUNTUNIQUE无效,因为COUNTUNIQUE需要处理的是候选人列表,而非单个统计数字。
适配Excel 365/2021的简洁公式
使用FILTER+COUNTUNIQUE组合,先筛选出符合要求的候选人,再统计唯一值:
=COUNTUNIQUE(FILTER('OpEx Project Tracking- BB'!$B$4:$B, ('OpEx Project Tracking- BB'!$E$4:$E=A3)* (('OpEx Project Tracking- BB'!$Y$4:$Y>TODAY())+('OpEx Project Tracking- BB'!$Y$4:$Y="")) ))
公式逻辑:
FILTER函数筛选出两类行:- 类别列(E列)匹配A3的项目
- 结束日期列(Y列)大于当前日期或为空的项目
- 对筛选出的候选人姓名列(B列),用
COUNTUNIQUE统计唯一值,自动排除同一候选人的重复项目。
兼容旧版Excel的公式
如果使用非365/2021版本,用SUMPRODUCT实现去重统计:
=SUMPRODUCT( ('OpEx Project Tracking- BB'!$E$4:$E=A3)* (('OpEx Project Tracking- BB'!$Y$4:$Y>TODAY())+('OpEx Project Tracking- BB'!$Y$4:$Y="")), 1/COUNTIF('OpEx Project Tracking- BB'!$B$4:$B,'OpEx Project Tracking- BB'!$B$4:$B&"") )
公式逻辑:
- 前半部分的条件判断得到符合要求的行标记(1=符合,0=不符合)
1/COUNTIF(...)生成每个候选人的权重:同一候选人的所有行权重均为1/出现次数,累加后每个候选人贡献恰好1SUMPRODUCT将条件标记与权重相乘求和,最终得到唯一候选人数量
内容的提问来源于stack exchange,提问作者Nikhil Saini
相关产品推荐
相关产品推荐

