谷歌工作表数组公式偏移(引用同一列中的上一行)

时间:2015-03-27 03:45:49

标签: arrays google-sheets formula

我正在尝试在gsheets中构建一个简单的银行注册。

数据如下所示:

Transaction       Debit   Credit   Balance    Formula
opening balance                    100
first             20               80         D3=D2-B3+C3  
second                     30      110        D4=D3-B4+C4

我想使用数组公式,但是我无法处理对与数组公式相同的列中的另一个单元格的引用。

我在单元格D3中尝试了这个:

ArrayFormula(D2:D-B3:B+C3:C) 

但我得到一个循环引用错误。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

在单元格D2中,尝试:

=ArrayFormula(if(isblank(A2:A),,mmult(transpose(if(transpose(row(B2:C))>=row(B2:C),if(row(A2:A)=2, 100, B2:B*-1+C2:C), 0)),row(B2:C)^0)))

请注意,'startbalance'(100)在公式中编码。如果需要改变。

答案 1 :(得分:0)

同理,简单一点

=ArrayFormula(if(isblank(A2:A),,(mmult(1*(transpose(row(B2:C))<=row(B2:C)),C2:C-B2:B))))