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

如何用SUMPRODUCT实现多币种金额转GBP自动求和?

解决不同币种金额转换为GBP并自动求和的问题

场景说明

假设你的数据结构如下(A列为币种代码,B列为对应金额):

A列(币种)B列(金额)
HKD10
SGD10

核心需求:将各币种金额乘以对应「币种转GBP」的汇率后求和,新增币种时无需修改公式即可自动纳入计算。


方案1:使用命名单元格存储汇率

如果你已经为每个币种的汇率定义了命名单元格(比如GBPHKD对应1HKD可兑换的GBP金额,GBPSGD对应1SGD可兑换的GBP金额),直接使用以下公式:

=SUMPRODUCT(B1:B2 * INDIRECT("GBP"&A1:A2))

你原公式的问题

你之前尝试的sumproduct(Indirect(concatenate(A1:A2),"GBP"),B1:B2)有两个关键错误:

  • 拼接顺序颠倒:应该是"GBP" + 币种代码(即"GBP"&A1:A2),而非币种代码在前
  • 参数逻辑错误:SUMPRODUCT需要两个数组相乘后求和,正确写法是将金额数组与汇率数组相乘后传入函数

方案2:使用汇率数据表(推荐)

如果不想手动逐个定义币种命名单元格,推荐用数据表统一管理汇率(比如在Sheet2中建立如下表格):

A列(币种)B列(GBP汇率)
HKD0.098
SGD0.72

新版Excel(支持XLOOKUP)

=SUMPRODUCT(B1:B2 * XLOOKUP(A1:A2, Sheet2!A:A, Sheet2!B:B, 0))

旧版Excel(无XLOOKUP)

=SUMPRODUCT(B1:B2 * INDEX(Sheet2!B:B, MATCH(A1:A2, Sheet2!A:A, 0)))

自动适配新增币种

把汇率表转换为Excel结构化表(选中数据后按Ctrl+T)并命名为tblExchange,公式可自动适配新增币种,无需手动修改:

=SUMPRODUCT(B1:B2 * XLOOKUP(A1:A2, tblExchange[币种], tblExchange[GBP汇率], 0))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 11:27:26