Excel – 计算空白单元格列之间差异的公式

我有一个Excel表单,其值与下表类似。

------------------------------------- | A | B | C | D | E | F | ------------------------------------- | 95| | 98| 96| 95| | ------------------------------------- | 96| 95| | 92| 91| | ------------------------------------- | 93| | 92| 98| 94| | ------------------------------------- | 92| 98| | 95| 92| | ------------------------------------- | 95| | 99| 92| 98| | ------------------------------------- 

F1的公式应该是=(B1-A1)+(C1-B1)+(D1-C1)+(E1-D1)

但是,有些单元格是空白的。 所以,如果单元格是空白的,它应该采取下一个单元格。

例如; F1应该是=(C1-A1)+(D1-C1)+(E1-D1)
F2应该是=(B2-A2)+(D2-B2)+(E2-D2)
等等…

有没有一个公式来自动化呢?

公式:

= (B1-A1) + (C1-B1) + (D1-C1) + (E1-D1)

也可以写成:

= B1 - A1 + C1 - B1 + D1 - C1 + E1 - D1

要么

= - A1 + (B1 - B1) + (C1 - C1) + (D1 - D1) + E1

其中只有第一个和最后一个数值占上风,因为所有其他数据本身都是无效的,

= - A1 + E1

所以公式成为last non-blank value减去第first non-blank value

试试这个公式:

 = INDEX( $A1:$E1, 0, AGGREGATE( 14, 6, COLUMN(1:1) / ( $A1:$E1 <> "" ), 1 )) - INDEX( $A1:$E1, 0, AGGREGATE( 15, 6, COLUMN(1:1) / ( $A1:$E1 <> "") ,1 )) 

有关所使用的工作表函数的进一步解释,请参阅这些页面:

AGGREGATE函数 , INDEX函数 。