当插入行时,是否可以使用数组公式保留我的公式(以添加特定列)?

时间:2019-04-22 03:58:43

标签: google-sheets array-formulas google-sheets-formula

我正在建立一个电子表格,每行中都有特定的列,但是插入行时需要包括公式。

如果在最后一列中选中了一个复选框,则当前公式还包括一个将值设为0的语句:

=IF(T2=FALSE, SUM(I2,K2,L2,M2,N2,O2), 0)

有没有办法使用数组公式来做到这一点?

2 个答案:

答案 0 :(得分:0)

这里是一个公式,该公式将为每行的I至O列求和,而忽略J列:

=ArrayFormula(if(I2:I="","",if(T2:T<>FALSE,0,I2:I+sumif(row(K2:O)+0*column(K2:O),row(K2:O),K2:O))))

但是这假设所有具有数据的行在第一列中都会有一个数字。

如果不是这种情况,则可以像下面这样分别测试列:

=ArrayFormula(if((I2:I="")*(K2:K=""),"",if(T2:T<>FALSE,0,I2:I+sumif(row(K2:O)+0*column(K2:O),row(K2:O),K2:O))))

依此类推,直到第O列,或者T列始终是完整的,您可以进行测试-这取决于数据的实际外观。

enter image description here

注释1

row(K2:O)+0*column(K2:O)

对于生成具有与SUMIF所需的K2:O相同尺寸的数组是必需的。

注释2

还有一种MMULT方法来获取行和as demonstrated here

答案 1 :(得分:0)

={"AAA"; ARRAYFORMULA(IF(LEN(T2:T), IF(T2:T=FALSE, I2:I+K2:K+L2:L+M2:M+N2:N+O2:O, 0), ))}

0