Excel使用公式统计特定条件下唯一ID去重计数出错求助
解决Excel去重计数公式错误的问题
可能的问题原因及对应解决方案
1. Month列数据类型不匹配
如果你的Month列是文本格式(比如用TEXT函数提取的月份,结果是"7"而非数字7),公式中用数字7匹配会导致条件不生效。
- 修改公式,将匹配值改为文本型:
=COUNTA(UNIQUE(FILTER(Table1[ID], (Table1[Med] = "Med A") * (Table1[Month] = "7")))) - 或者直接从
Date列提取月份,跳过可能出错的Month列:=COUNTA(UNIQUE(FILTER(Table1[ID], (Table1[Med] = "Med A") * (MONTH(Table1[Date]) = 7))))
2. 冗余的UNIQUE函数(ID为唯一标识符时)
你提到ID是唯一标识符,意味着每个ID在表中仅出现一次。这种情况下,UNIQUE函数是多余的,反而可能引入不必要的计算误差,直接统计过滤后的ID数量即可:
=COUNTA(FILTER(Table1[ID], (Table1[Med] = "Med A") * (Table1[Month] = 7)))
3. 更简洁的替代方案(COUNTIFS)
由于ID唯一,符合条件的行数就是唯一ID的数量,用COUNTIFS更高效:
=COUNTIFS(Table1[Med], "Med A", Table1[Month], 7)
4. 排除空值干扰
如果Med或Month列存在空值,可能导致过滤结果异常,可在条件中加入非空判断:
=COUNTA(FILTER(Table1[ID], (Table1[Med] = "Med A") * (Table1[Month] = 7) * (Table1[Med]<>"") * (Table1[Month]<>"") ))
内容的提问来源于stack exchange,提问作者Gen
相关产品推荐
相关产品推荐

