Google电子表格SUMIF()动态范围功能

时间:2016-05-24 12:50:32

标签: dynamic google-sheets range spreadsheet

我写了一个SUMIF()语句,当我手动选择我想要求和的范围时,但是我想要一个函数,我可以把它放在我想要求和的范围之下,它应该自动将范围扩展到高于该范围的某个断点。 因此,例如,我有一个列表,我希望对列'持续时间'求和,如果'$'列中有'2',则将总和加倍,并在列'$'中有'1'时将其余加倍而不加倍“:

C    D
$    duration
1    1:40
2    2:30
1    3:30
1    1:50

$    duration
2    5:50
1    2:30
2    4:20

我已经知道如何做到这一点。但我有多个范围,我想与我写的SUMIF()语句相加。在这种情况下,断点是$。

是否有可能在google电子表格中执行此操作?

1 个答案:

答案 0 :(得分:0)

试试这个公式:

=SUMPRODUCT(
OFFSET($C$1,MATCH("$",OFFSET($C$1,,,row()-1)),,row()-1-MATCH("$",OFFSET($C$1,,,row()-1))),
OFFSET($D$1,MATCH("$",OFFSET($C$1,,,row()-1)),,row()-1-MATCH("$",OFFSET($C$1,,,row()-1))))

这很复杂。但是这部分MATCH("$",OFFSET($C$1,,,row()-1))在公式中使用了4次。您可以使用E列来计算它:

=MATCH("$",OFFSET($C$1,,,row()-1))

然后最终公式将如下所示:

=SUMPRODUCT(OFFSET($C$1,E6,,row()-1-E6),OFFSET($D$1,E6,,row()-1-E6))