如何基于每第1列的条件对每第3列求和(求销量)
解决方案
要实现对R9及之后每第3列的销量(QTY.SOLD)求和,同时匹配对应位置P9及之后每第3列的数值处于S3(下限)到S4(上限)区间的条件,可使用以下修改后的公式:
SUMPRODUCT版本(兼容所有Excel版本)
=SUMPRODUCT( --(MOD(COLUMN(R9:FI9)-COLUMN(R9),3)=0), // 定位R9开始的每第3列(R、U、X……) --(OFFSET(R9,0,-2,1,COLUMNS(R9:FI9))>S3), // 对应条件列(P、S、V……)大于S3 --(OFFSET(R9,0,-2,1,COLUMNS(R9:FI9))<=S4),// 对应条件列小于等于S4 R9:FI9 // 求和的销量列区域 )
动态数组版本(适用于Excel 365/2021及以上)
如果你的Excel支持动态数组函数,用FILTER+SUM会更直观:
=SUM( FILTER( R9:FI9, MOD(COLUMN(R9:FI9)-COLUMN(R9),3)=0 // 筛选销量列中每第3列的区域 * (OFFSET(R9,0,-2,1,COLUMNS(R9:FI9))>S3) // 匹配条件列大于S3 * (OFFSET(R9,0,-2,1,COLUMNS(R9:FI9))<=S4) // 匹配条件列小于等于S4 ) )
关键调整说明
- 原公式的条件区域和求和列不匹配:你需要的是条件列是P9及之后每3列,求和列是R9及之后每3列,两者是对应偏移2列的关系(R列比P列靠右2列),所以用
OFFSET(R9,0,-2,...)来关联对应的条件列。 - 用
MOD(COLUMN(R9:FI9)-COLUMN(R9),3)=0精准定位R9开始的每第3列,避免原公式中列偏移计算的误差。
内容的提问来源于stack exchange,提问作者Aaren Kade F.
相关产品推荐
相关产品推荐

