You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel 365中如何用数组函数汇总匹配指定发票号的多列金额?

跨月份发票金额汇总方案

完全可行,不用纠结SUMPRODUCT+OFFSET的复杂组合,有两种更直接的实现方式:

一、直接用SUMPRODUCT函数计算(无需修改原始表)

针对你这种每两个月一组「发票号+金额」的宽表结构,直接遍历所有发票列和对应金额列即可。以你的示例数据为例:
假设结果表的发票号在F2单元格,计算总金额的公式为:

=SUMPRODUCT((($A$2:$A$4=$F2)+($C$2:$C$4=$F2))*($B$2:$B$4+$D$2:$D$4))

如果是3年的完整数据(共18组发票+金额列),只需把所有发票列用+连接、所有金额列用+连接,扩展公式即可:

=SUMPRODUCT((($A$2:$A$4=$F2)+($C$2:$C$4=$F2)+($E$2:$E$4=$F2)+...)*($B$2:$B$4+$D$2:$D$4+$F$2:$F$4+...))

公式逻辑:判断所有发票列是否等于目标发票号,匹配成功的对应金额列数值相加,得到总金额。

二、转成窄表后用数据透视表汇总(长期维护更高效)

你的原始宽表结构不利于长期数据管理与汇总,建议先转成「发票号+金额+月份」的窄表,再用数据透视表快速汇总:

  1. 复制原始数据到新工作表
  2. 选中数据,通过Excel「数据」选项卡的「获取和转换数据」功能(Power Query),将每组「发票号+金额」列拆分为独立行
  3. 转成窄表后插入数据透视表:
    • 将「发票号」拖到行区域,「金额」拖到值区域
    • 值字段设置为「求和」,自动生成所有发票的汇总金额

示例验证

针对你给出的示例数据,计算KTL3020的总金额,代入公式后结果为$315,000.00,与期望结果完全一致。

注意事项

  • 确保发票号匹配一致,若存在大小写差异,可嵌套UPPER函数统一格式(如UPPER($A$2:$A$4)=UPPER($F2))
  • 金额列必须为数值格式,若为文本格式需先转换,否则函数无法正确计算

内容的提问来源于stack exchange,提问作者Whitmbk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 11:01:07