在Excel 2013(或更高版本)中给出2个命名表:
tbl发票
ID InvRef Total
1 I/123 45
2 I/234 8
tbl交付
ID InvRef Amt
1 I/123 10
2 I/123 15
3 I/123 20
4 I/234 5
5 I/234 3
我们如何获得tblInvoice[Total]
以使用Excel公式自动计算?即使用伪代码:
tblDeliveries[Total] = SUM(tblDeliveries[Amt] WHERE MATCH InvRef)
我在tblInvoice[InvTotal]
中尝试了此Excel公式,但返回的值不正确:
=SUMPRODUCT(SUMIF(tblDeliveries[InvRef],[InvRef],tblDeliveries[Amt]))
还尝试交换第一个和第二个参数。产生不同的数量,但仍然不正确:
=SUMPRODUCT(SUMIF([InvRef],tblDeliveries[InvRef],tblDeliveries[Amt]))
如果相关,则假定从tblInvoice[InvRef]
:tblDeliveries[InvRef]
开始是1:N关系,并且tblInvoice[InvRef]
是唯一的。
答案 0 :(得分:2)
语法不符合您的要求。
=SUMPRODUCT(SUMIF(tblDeliveries[InvRef],[@InvRef],tblDeliveries[Amt]))
@是关键区别。
致谢