根据单元格值对另一行的单元格求和

时间:2013-10-07 11:40:39

标签: google-sheets

我的代码是:

(SUM(INDIRECT(ADDRESS(ROW()-(I4:I- 1);COLUMN()-4;4)&":"
&ADDRESS(ROW();COLUMN()-4;4)))*( ( J4:J ) / 10 ))))

基本上我想从Gx-Gy中求和细胞,但范围由细胞I4决定。上面的代码有效,但只适用于一行。我希望它适用于数据所在的整个列。

=ArrayFormula( if( J4:J = "" ; "" ;

所以我把ArrayFormula放在前面,只显示数据的计算结果,但结果总是=第一行的结果?

任何人都可以告诉我为什么会这样,以及该怎么办?

我的表格: - > https://docs.google.com/spreadsheet/ccc?key=0AkKaHeBdxneDdHNNQUY5elliWnZRcEVEdkZpZ2h4S1E&usp=sharing

1 个答案:

答案 0 :(得分:0)

感谢TOM HORWOOD,他回答了我的问题:

  

借助矩阵乘法的神奇之处和这个解决方案(信用卡   在信用到期的情况下,我设法纠结它来做你的事   想。

     

= ArrayFormula(IF(J4:J =“”;“”; MMULT((行(G4:G)> = TRANSPOSE(行(G3:G)))((行(G4:G) )+ 1-I4:I)LT = TRANSPOSE(ROW(G3:G))); G3:G)   ((J4:J)/ 10)))我的头已经疼了,所以我也不会进去   很多解释性的细节,除了说关键魔法发生在

     

=“MMULT((ROW(范围1)> = TRANSPOSE(ROW(范围2)))*((ROW(范围1)+ 1-I4:I)LT = TRANSPOSE(ROW(范围2)));范围2 )))”   我已经用一个粗略的等式为你的公众添加了第二张表   构建者,用于理解或替代应用程序。

谢谢Tom !!