Excel统计调研数据时如何实现多列任意有值仅计1次
解决方案
你可以用SUMPRODUCT函数搭配布尔判断实现需求,比COUNTIFS更适配这种多列满足任意条件即计数1次的场景:
- 假设你要统计的原始数据中D、E、F列的统计范围是第2行到第100行(可根据实际数据量调整行号范围),基础公式写法如下:
=SUMPRODUCT(--((D2:D100<>"")+(E2:E100<>"")+(F2:F100<>"")>0)) - 如果需要和主选项A、B的统计逻辑结合,比如要同时满足A列选中某值、且D/E/F任意列非空的计数,可直接在SUMPRODUCT中叠加判断条件,示例如下(统计A列为「选项A」且属于其他分类的行数):
=SUMPRODUCT(--(A2:A100="选项A"),--((D2:D100<>"")+(E2:E100<>"")+(F2:F100<>"")>0))
公式逻辑说明:
(列<>"")会对每一行的对应列做非空判断,返回布尔值TRUE/FALSE,多列判断结果相加时布尔值会自动转换为1/0,只要任意列非空相加结果就≥1,再和0比较得到符合条件的行的布尔数组,用--转成1/0后求和,就能实现每行只要有一个列有值就仅计1次的需求。
内容的提问来源于stack exchange,提问作者artobinvelez
相关产品推荐
相关产品推荐

