我正在尝试在Excel中设置智能条件求和。但是可用的功能范围似乎并没有提供我想要的功能。
我有两列数字。在A中,我有我们称之为缩进级别的内容。在B中,我有价值观。
对于具有子缩进的任何特定行,我想在B中使用一个公式,该公式将计算B中从下一行到该行的下一个实例的值的总和 if A中相应的值是到目前为止的最小值。
e.g。
row | A | B | calc'd
--------------------
1 | 0 | 9 | y
2 | 2 | 2 |
3 | 1 | 7 | y
4 | 2 | 3 |
5 | 2 | 4 |
6 | 0 | 5 | y
7 | 1 | 5 |
因此,对于第1行,总和范围将是第2行到第5行。这部分,我可以使用OFFSET MATCH
。
SUMIF
应包含第2行,因为A2是A2中的最小值:A2。
同样,它应包括第3行,因为A3是A2中的最小值:A3。
但它不应该在总和中包含第4行或第5行,因为它们的A列值不是最小的“到目前为止”。 (这些值已经“累加”到第3行。)
如何使用这个“最小 - 迄今为止”的条件创建远程sumif?
答案 0 :(得分:0)
我找到了解决方法。不像我想要的那么干净,但它可以解决问题:
向C列添加一个辅助值,即“父行”将汇总到。
例如,C5 {=MAX(ROW($9:5)*(A$1:A4<A5))}
(注意:数组函数)。
制作B1 =SUMIF(C2:Cn,"="&ROW(),B2:Bn)
的最终等式(其中n是工作范围的上限)。
正如这里所写的那样,插入行会让事情变得混乱,但是可以使用OFFSET
扩展行以插入行。