Excel:Sumifs Formula,可能的索引匹配?

时间:2016-05-18 01:27:30

标签: excel excel-formula sumifs

我正在尝试创建一个SUMIFS,它具有智能检查数据范围内的“子”行,然后使用“父”ID号(列在子行中)检查父项数据和总和。我在下面插入了一张表格的图片,其中提供了一个虚拟数据集。这种公式的理想结果是:

第1阶段父母的孩子:$ 0

第2阶段父母的孩子:80美元

第3阶段父母的孩子:$ 10

提前感谢您的帮助!

Example Data Set

或作为文字:

ID  Type    Parent ID   Phase   Finances
1   Single              1       $10
2   Parent              2       $10
3   Child   2                   $10
4   Single              3       $10
5   Parent              3       $10
6   Child   5                   $10
7   Single              1       $10
8   Parent              2       $10
9   Child   8                   $10
10  Child   8                   $10
11  Child   8                   $10
12  Child   8                   $10
13  Child   8                   $10
14  Child   8                   $10
15  Child   8                   $10

2 个答案:

答案 0 :(得分:1)

假设你的桌子在A1到E16。

生成辅助列,填充空白阶段。假设它们与父ID具有相同的相位,则填充空白阶段。因此在F1中将以下公式复制到F16:

=IF(D2<>"",D2,VLOOKUP(C2,$A$2:$D$16,4,0))

现在我们可以使用sumproduct并且只使用子项和阶段2的总数。在H1到J3中,我构建了我正在寻找的汇总表。在H1到J1我使用了标题,在H2到I 4我定义了我要搜索的内容。在J2到J4中,我使用了一个公式来确定财务状况如下:

Type   |  Phase  |  Finance
Child  |    1    |  =SUMPRODUCT(($B$2:$B$16=H2)*($F$2:$F$16=I2)*$E$2:$E$16)
Child  |    2    |  =SUMPRODUCT(($B$2:$B$16=H3)*($F$2:$F$16=I3)*$E$2:$E$16) 
Child  |    3    |  =SUMPRODUCT(($B$2:$B$16=H4)*($F$2:$F$16=I4)*$E$2:$E$16)

sumproduct只汇总表中有CHILD的行(如H列中所定义)和阶段等于I中定义的数字,并且只汇总财务列中对应的值。如果B中不存在任一子节点或者F中的相位不等于正在搜索的数字,那么该行的值为0。

概念证明

Proof of Concept

答案 1 :(得分:1)

这是一个数组公式:

=SUM(IF($C$2:$C$16<>"",(LOOKUP($C$2:$C$16,$A$2:$A$16,$D$2:$D$16)=G2)*$E$2:$E$16))

作为数组公式,需要在离开编辑模式时使用Ctrl-Shift-Enter确认。如果操作正确,Excel会将{}放在公式周围。

enter image description here