表中末行之间具有未定义的空白数的差异

时间:2019-02-26 11:43:06

标签: excel

我有以下Excel表:

Date       | Value
===========+=======
24.02.2019 |  1350
25.02.2019 |  1120
26.02.2019 |  1200
           |
           |
           |
===========+=======
DIFFERENCE |    80

底部总行(DIFFERENCE)应该计算表中最后插入的记录的值与上一条记录的值之间的差。明天当我插入新记录27.02.2019的值1300时,最下面一行应显示差异100(1300-1200)。最后插入的行和底部的总行之间有未定义的空白行数。

3 个答案:

答案 0 :(得分:1)

这是另一个例子

=INDIRECT("B"&COUNTA(INDIRECT("B1:B"&ROW()-1)))-INDIRECT("B"&COUNTA(INDIRECT("B1:B"&ROW()-1))-1)

enter image description here

答案 1 :(得分:0)

嗯,这很有效,又快又脏……

=OFFSET(B1,LOOKUP(2,1/(B:B<>""),ROW(B:B))-1,,)-OFFSET(B1,LOOKUP(2,1/(B:B<>""),ROW(B:B))-2,,)

enter image description here

如果要在同一列中显示结果,则必须控制范围B:B ...

答案 2 :(得分:0)

我认为这里不需要OFFSETINDIRECT,您可以像这样简单地使用INDEX:

=INDEX($B$2:$B$10,COUNTA($B$2:$B$10))-INDEX($B$2:$B$10,COUNTA($B$2:$B$10)-1)

注意:OFFSETINDIRECT是易失函数,而INDEX不是易失函数。易失性意味着如果工作簿中的任何地方发生任何更改,则必须重新计算其值。但是,在具有非易失性功能的情况下,仅当其参数(在本例中为$ B $ 2:$ B $ 10)更改时才启动重新计算。因此,总的来说,我的解决方案比之前发布的其他两个解决方案效率更高。