基于MATCH条件实现Excel单元格分组求和的方法咨询
解决方案
Excel 365(支持GROUPBY函数版本)
直接输入以下动态数组公式到目标区域的左上角单元格,即可自动溢出完整的分组汇总结果,无需手动下拉填充:
=LET( 筛选范围;FILTER(B3:D20;ISNUMBER(MATCH(C3:C20;TypeP;0))); GROUPBY(CHOOSECOLS(筛选范围;1;2);CHOOSECOLS(筛选范围;3);SUM;0) )
公式说明:
- 先用
FILTER筛选出类型属于TypeP范围的记录,仅保留组件、类型、数量三列 GROUPBY按前两列(组件、类型)作为分组维度,对第三列(数量)执行求和计算- 最后一个参数
0表示不额外生成分组合计行,输出结果自带表头,和你预期的L3:N7结构完全一致
低版本Excel兼容方案
如果你的版本不支持GROUPBY函数,可以用UNIQUE+SUMIFS组合实现:
- 先在结果区域的左上角(如L3)手动输入表头:组件、类型、数量
- 在L4单元格输入公式提取不重复的分组组合,自动溢出所有唯一值:
=UNIQUE(FILTER(B3:C20;ISNUMBER(MATCH(C3:C20;TypeP;0)))) - 在N4单元格输入求和公式,和左侧的分组组合对应,手动下拉填充到所有行即可:
=SUMIFS(D:D;B:B;L4;C:C;M4)
注意事项
如果你的Excel区域设置使用逗号作为参数分隔符,把上述公式里的分号;替换为逗号,即可正常使用。
内容的提问来源于stack exchange,提问作者Ushay
相关产品推荐
相关产品推荐

