Excel 有关索引匹配和求和的组合的帮助?

Excel help on combination of Index - match and sumifs?

我有这三个 table,如下图所示: SalesOrderTable、OrderAdjustmentTable 和 TotalSalesTable。

销售订单表

SalesOrderTable 中的每个订单号代表来自同一发票的产品的订单号。如果为不止一种产品开具发票,它有 A、B 或 C,但如果只为一种产品开具则没有。 例如:订单 1703 有两个产品,因此每个订单号的末尾都有 A 和 B。 1704号订单只有苹果的订单,所以最后没有任何字母。

订单调整表

如果每个订单号有任何调整,则在调整栏中手动输入。

TotalSalesTable

在此table中,同一订单号的所有总销售额和调整金额合计。所以 1705 的订单是 1705A、1705B、1705C 的组合。

这是我当前的公式,所有公式都会产生错误消息或计算不正确。

订单总金额列:

=SUMIF(SalesOrderTable[Order Number], LEFT(G4,LEN(SalesOrderTable[Order Number])-1),SalesOrderTable[Order Sales Amount])

订单总计调整列:

=sumifs(OrderAdjustmentTable[#All],OrderAdjustmentTable[Order Number],MATCH(B19,LEFT(SalesOrderTable[Order Number],LEN(SalesOrderTable[Order Number])-1), 0), "*Adjustment",OrderAdjustmentTable[#All])

我知道这可能与 match 和 sumifs 有关,但我所做的所有公式都会导致错误消息。 任何人都可以帮助我解决上面这些公式的错误,我该如何解决?我在这里不知所措,将不胜感激任何建议。非常感谢!

编辑:

我要实现的是填充:

TotalSalesTable 中的订单总金额列,所有具有相同订单号的订单,无论其 ABC。所以 1705 的总金额将是 1705A、1705B、1705C 的订单金额的总和。

对于订单总调整,我想从OrderAdjustmentTable 中获取TotalSalesTable 中订单号列的所有调整值,而不管它们的ABC。因此,TotalSalesTable 中 1705 的总调整将是 1705B 和 1705C。

稍等片刻,将 LEFT 放入 SUMIF 似乎会导致问题(至少在 Mac 上)。

我建议先在单独的列中计算不带字母的订单号。 LEFT returns 一个字符串,所以我不得不将它包装在 VALUE 中,以便 SUMIF 匹配。因为你都是四位数,所以我就用了VALUE(LEFT([@[Order Number]],4))

那就是标准的SUMIF表示法:

=SUMIF(Table1[Base Num],[@[Order Number]],Table1[Order Sales Amount])

示例:https://www.dropbox.com/s/yj6ktl14jqglxsm/Example.xlsx?dl=0

您可以通过多种方式获取订单号,但您必须谨慎使用您的示例:

LEFT(G4,LEN(SalesOrderTable[Order Number])-1) 因为这对 1703A12990B 可以正常工作,但会从 1701 中删除一个数字。

编辑: 如果您的位数不同,这是获取订单号的一种方法:=IFERROR(VALUE(A2),VALUE(LEFT(A2,LEN(A2)-1)))

这表示,"if VALUE(A2) returns an error (meaning it has a letter in it), remove the last character, otherwise, use VALUE(A2) since it's already a number."

只要没有字母重叠和不重叠的订单(例如,SalesOrderTable 有 1703、1703A 和 1703B 的记录),以下公式应该适用于单元格 C19,您可以从那里复制它向下:

订单总金额:

=SUMIFS(SalesOrderTable[Order Sales Amount],SalesOrderTable[Order Number],$B19)+SUMIFS(SalesOrderTable[Order Sales Amount],SalesOrderTable[Order Number],$B19&"*")

此公式将精确匹配和近似匹配相加,但就像我说的,如果任何订单都有字母和缺少字母,则可能会 duplicated/double 计数。您还应该能够复制订单总调整列的公式。