如何将此总和集成到 ArrayFormula?

问题描述

我希望单元格总是对所有优秀的单元格求和。当我拖动时,公式被正确复制:

**CelJ3** =SE(I3="";"";SUM($I$2:I3))
**CelJ4** =SE(I4="";"";SUM($I$2:I4))
.
.
.
.
**CelJ100** =SE(I100="";"";SUM($I$2:I100))

但是如何将这个公式放入 ArrayFormula 中,以便每一列都包含该公式?

解决方法

删除您在 J 列中的所有内容并在 J3 中使用它:

=ARRAYFORMULA(IF(I3:I="",SUMIF(ROW(I3:I),"<="&ROW(I3:I),I3:I)))

enter image description here


更快的公式:

=ARRAYFORMULA(MMULT(
 TRANSPOSE((ROW(INDIRECT("I3:I"&MAX(ROW(I:I)*(I:I<>""))))<=
 TRANSPOSE( ROW(INDIRECT("I3:I"&MAX(ROW(I:I)*(I:I<>""))))))*
                INDIRECT("I3:I"&MAX(ROW(I:I)*(I:I<>"")))),QUERY(INDIRECT("I3:I"&MAX(ROW(I:I)*(I:I<>""))),"select 1 label 1''")))

enter image description here