第1部分:
我能够构建一个完全符合我要求的公式(从一些示例中),但是,我无法弄清楚它是如何工作的。我有,从单元格 A1 开始:
Price $
table 20
chair 10
Invoice Quantity
table 17
chair 1
chair 2
table 3
我想要的是发票的最终总数(430),计算为每件商品的数量*价格(17*20 + 1*10 + 2*10 + 3*20)。以下公式正确地做到了这一点:
=SUMPRODUCT(B6:B9,SUMIF(A2:A3,A6:A9,B2:B3))
我了解 SUMPRODUCT 和 SUMIF 的基础知识。但是在这里,我对 SUMIF 范围的论点是 A2:A3,这让我认为 SUMIF 将遍历 A2 和 A3,而不是遍历 A8:A11(这是标准)。是什么赋予了?
编辑:不清楚的部分是,当前两个参数具有不同的维度(这里,范围是 2 个单元格,而标准是 4 个单元格)时,SUMIF 究竟做了什么(它的迭代模式是什么)。另外,SUMIF 的“输出”是什么?数组?属于什么维度?
第2部分:
此外,如果我忽略数量,只想在看到桌子时添加 20 并且每当看到椅子时添加 10,我想我会这样做:
=SUMIF(A2:A3,A6:A9,B2:B3)
但这不起作用,我必须用 SUMPRODUCT() 将它括起来才能正常工作并正确评估为 60。将它包含在 SUM 中也不起作用(可能是因为 SUMIF 不返回数组? ) 为什么?
我已经阅读了很多教程,但仍然无法理解这一点,并且非常感谢您对这两种情况进行清晰,直观的解释。谢谢你。