Google电子表格中的动态减法

问题描述 投票:0回答:2

请看一下我的电子表格:https://docs.google.com/spreadsheets/d/1K5Btg5fFS590G7vZsFiepY-2VTPhzJIlkKK_o-9Ag7E/edit?usp=sharing

如何得到:

  • C2显示Start weight(即“100,0”)
  • C3显示C2 - Daily weightloss(即“99,7701”)
  • C4显示C3 - Daily weightloss(即“99,5402)
  • C5显示C4 - Daily weightloss(即“99,3103”)
  • ...等等。

显然,挑战是动态地执行此操作,因为所有用户提交的数据都是如此,因此,所有计算的数据都可能会发生变化。

我认为这可以/应该用ArrayFormula以某种方式解决,但我不知道如何。

google-sheets array-formulas running-total
2个回答
1
投票
=ARRAYFORMULA(IF(A2:A;
 MMULT(TRANSPOSE((ROW(INDIRECT("B2:B"&COUNTA(A1:A)))<=
       TRANSPOSE( ROW(INDIRECT("B2:B"&COUNTA(A1:A)))))*
      {B2; TRANSPOSE(SPLIT(REPT(J5*-1&"♦"; COUNTA(A3:A)); "♦"))}); 
 SIGN({B2; TRANSPOSE(SPLIT(REPT(J5*-1&"♦"; COUNTA(A3:A)); "♦"))})^2); IFERROR(1/0)))

0


0
投票

看起来好像你可以做到这一点

=ArrayFormula(if(A2:A="","",100-(row(A2:A)-row())*J5))

虽然从前一行的计算意义上它不是动态的。

© www.soinside.com 2019 - 2024. All rights reserved.