Excel中如何对多列分散的同规格同材质面板数据用SUMIF求和?
解决Excel多列双条件(尺寸+材质)求和问题
核心思路
你之前仅处理单列单条件,现在需要将分散在多列的材质、尺寸、数量数据先统一压平为单列,再基于「材质+尺寸」的唯一组合进行多条件求和。
步骤1:生成唯一的「材质+尺寸」组合
假设你的材质列是B17:B19、F17:F19、J17:J19,尺寸列是C17:C19、E17:E19、G17:G19,用以下公式生成所有不重复的配对:
=UNIQUE(HSTACK(FLATTEN(B17:B19,F17:F19,J17:J19), FLATTEN(C17:C19,E17:E19,G17:G19)))
FLATTEN:把多列的材质/尺寸数据合并成单列,方便后续统一处理HSTACK:将材质列和尺寸列横向合并,形成「材质-尺寸」的配对行UNIQUE:去除重复的配对,得到所有需要统计的组合
步骤2:对每个唯一组合求和
假设对应的数量列是D17:D19、H17:H19、L17:L19,用BYROW+LAMBDA遍历每个唯一组合,结合SUMPRODUCT完成多条件求和:
=BYROW( UNIQUE(HSTACK(FLATTEN(B17:B19,F17:F19,J17:J19), FLATTEN(C17:C19,E17:E19,G17:G19))), LAMBDA(pair, SUMPRODUCT( (FLATTEN(B17:B19,F17:F19,J17:J19)=INDEX(pair,1))* (FLATTEN(C17:C19,E17:E19,G17:G19)=INDEX(pair,2))* FLATTEN(D17:D19,H17:H19,L17:L19) )) )
BYROW+LAMBDA:逐个处理每个「材质-尺寸」配对SUMPRODUCT:通过两个条件判断(材质匹配、尺寸匹配),对符合条件的数量求和
替代方案(适配习惯SUMIF的场景)
如果你更熟悉SUMIF,可以把「材质+尺寸」合并成单个条件字符串:
- 生成唯一组合:
=UNIQUE(FLATTEN(B17:B19&"|"&C17:C19, F17:F19&"|"&E17:E19, J17:J19&"|"&G17:G19))
- 针对每个唯一组合求和(假设唯一组合在
K2单元格):
=SUMIF(FLATTEN(B17:B19&"|"&C17:C19, F17:F19&"|"&E17:E19, J17:J19&"|"&G17:G19), K2, FLATTEN(D17:D19,H17:H19,L17:L19))
下拉公式即可完成所有组合的求和。
注意事项
- 确保材质、尺寸、数量列的位置对应(比如每一组都是「材质列→尺寸列→数量列」的顺序)
- 以上公式适用于Excel 365/2021及以上版本(支持动态数组和LAMBDA函数)
内容的提问来源于stack exchange,提问作者DrakeJest
相关产品推荐
相关产品推荐

