如何使用Sumif+Index/Match计算对应名称的A列数值总和
需求实现方案
公式修改方案
直接根据自己的Excel版本选择对应公式,替换引用范围即可使用:
- 365/2021及以上支持动态数组的Excel版本,输入公式后直接回车生效:
=SUMPRODUCT(SUMIF(原始名称列, 右侧零散待统计名称的单元格区域, A:A))
示例:如果原始匹配名称存放在B列,右侧待统计名称散落在D2:F15区间,公式写为
=SUMPRODUCT(SUMIF(B:B,D2:F15,A:A))即可。该公式会自动跳过名称区域内的空单元格,匹配所有对应名称的A列数值求和,不会因为同个名称重复出现产生计算错误。
- 2019及更早的旧版Excel,输入公式后需按
Ctrl+Shift+Enter三键确认数组公式才能生效:=SUM(SUMIF(原始名称列, 右侧零散待统计名称的单元格区域, A:A)) - 若待统计名称区域存在重复值,需要去重后计算,动态数组版本可直接将公式内的名称区域替换为
UNIQUE(待统计名称区域)。
数据结构重构建议
- 不要将待统计名称零散放置在多列多行的不规则区域,统一整理到单列逐行存放,后续公式编写、数据核对、筛选操作的效率会明显提升,也不容易出现范围漏选的问题。批量整理零散名称可以直接用
=TOCOL(原零散名称区域,1),一键生成无空值的单列名称列表,无需手动逐格复制。 - 原始数据源选中后按
Ctrl+T转为超级表,后续新增数据行时,公式引用的数据源范围会自动扩展,无需每次手动调整引用区间。 - 若后续需要多维度统计(如分月份、分品类求和),直接基于超级表插入透视表,拖拽字段即可生成统计结果,无需反复编写公式。
内容的提问来源于stack exchange,提问作者Leo Holland
相关产品推荐
相关产品推荐

