Excel中如何让INDEX MATCH函数返回所有符合条件值的总和
问题答复
- 该需求完全可实现。
- 你当前使用的公式没有语法错误,但函数选型不符合需求:
INDEX+MATCH组合的设计逻辑就是定位返回首个匹配项,本身不具备多条件匹配后聚合求和的能力,所以只会返回第一个符合条件的值。
可用实现方案
根据你使用的Excel版本选择对应公式即可,公式逻辑为同时匹配行维度的两个条件(A列等于A6、C列等于A$1)、列维度的两个条件(第10行等于D$1、第8行等于E$1),对所有同时满足条件的交叉单元格求和:
- 如果你用的是Excel 365/2021及以上支持动态数组的版本,直接输入以下公式按回车即可:
=SUM(($A$13:$A$200=A6)*($C$13:$C$200=A$1)*($E$10:$AZ$10=$D$1)*($E$8:$AZ$8=$E$1)*$E$13:$AZ$200)
- 如果你用的是Excel 2019及更早的非动态数组版本,输入上面的SUM公式后需要按
Ctrl+Shift+Enter三键结束,触发数组计算,不要手动给公式加外层大括号。 - 全版本通用、不需要三键触发的方案可以用
SUMPRODUCT函数,公式如下:
=SUMPRODUCT(($A$13:$A$200=A6)*($C$13:$C$200=A$1)*($E$10:$AZ$10=$D$1)*($E$8:$AZ$8=$E$1)*$E$13:$AZ$200)
注意:所有公式里的单元格引用范围和你原公式保持一致,不需要调整范围,直接替换原来的INDEX+MATCH公式即可。
内容的提问来源于stack exchange,提问作者Sebastian
相关产品推荐
相关产品推荐

