如何在SUMIFS()函数的条件参数中使用ABS()函数?
问题解答
报错原因
SUMIFS 函数的条件区域参数仅支持直接传入原生单元格引用,不支持嵌套函数返回的数组结果,这是你编写的=SUMIFS(C:C,ABS(A:A),">=0",ABS(A:A),"<=0.5")报错的根本原因。
保留ABS()的实现方案
全Excel版本兼容方案
使用SUMPRODUCT函数,它天然支持数组运算,可直接嵌套ABS()完成条件判断,公式如下:
=SUMPRODUCT(C2:C6 * (ABS(A2:A6) <= 0.5))
补充说明:任意数值的绝对值默认大于等于0,因此原需求中的
>=0条件可以直接省略,运行结果完全一致。如果需要保留完整判断逻辑,公式可写为:=SUMPRODUCT(C2:C6 * (ABS(A2:A6)>=0) * (ABS(A2:A6)<=0.5))
365/2021及以上高版本Excel方案
高版本Excel支持动态数组运算,直接使用SUM搭配布尔判断即可实现:
=SUM((ABS(A2:A6)<=0.5)*C2:C6)
内容的提问来源于stack exchange,提问作者Conner
相关产品推荐
相关产品推荐

