我正在尝试将函数“ SUMIFS”与“动态标准”一起使用。
参见下表。
在 表概述 单元格B2中,我得到了要计算出的公式: SUMIFS 表数据 中的所有水果( 表标准 ,列A:A)。 如果有新产品,例如苹果,我想在A4的表格标准中将其添加为“苹果”,我的概述应将苹果的数量添加到水果中。
有什么想法吗?
表格“概述”
|_| A | B |
|1| **Subject** **Count**
|2| Fruits 10
|3| Vegtables 20
|4|
表格“条件”
|_| A | B |
|1| **Fruits** **Vegtables**
|2| Banana Carrot
|3| Kiwi Broccoli
|4|
表格“数据”
|_| A | B |
|1| **Product** **Count**
|2| Banana 2
|3| Kiwi 3
|4| Banana 5
|5| Carrot 5
|6| Broccoli 15
答案 0 :(得分:2)
使用:
=SUMPRODUCT(SUMIFS(B:B,A:A,INDEX($D$2:$E$2:INDEX(D:E,MATCH("zzz",INDEX(D:E,0,MATCH(G2,$D$1:$E$1,0))),MATCH(G2,$D$1:$E$1,0)),0,MATCH(G2,$D$1:$E$1,0))))
这是动态的,将允许将项目添加到两个输入列表中,而无需更改公式并仍保持最少的迭代。 SUMPRODUCT强制对SUMIFS标准进行迭代,尽管我们可以将完整的列放入其中,但它会迭代104万次,这会减慢计算速度。
现在,如果它们是Excel中真正的结构化表,则可以简化该表,因为该表会限制迭代次数:
=SUMPRODUCT(SUMIFS(Data[Count],Data[Product],INDEX(Criteria,0,MATCH([@Subject],Criteria[#Headers],0))))