【问题标题】:Google sheet calculations following data insert数据插入后的谷歌工作表计算
【发布时间】:2018-11-16 21:32:19
【问题描述】:

我有一个静态网站,我在 netlify 上托管了一个表单。使用 netlify 到工作表 zap ,当表单在网站上提交时,数据在我的工作表中显示为一行,正如预期的那样。

在添加最后一行的插入之后。我想做一些应用程序脚本后处理,我正在使用 onchange 事件触发它。在进行后期处理之前,我想填写几个表单未提交的空白单元格,例如日期字段和总计字段。它将价格单元格放在其左侧并添加 1500。

我原本以为只用一个公式:

 =(cell on left)+1500 

并将其复制到行中。问题是这会破坏我获取最后提交的行的能力。

我需要它看起来像:

在我开始其他处理之前。

是否有另一种方法可以在特定行内进行计算?

【问题讨论】:

  • onChange 触发器是否真的由非人类的东西在行插入时触发?测试看看。
  • 是的,它是由工作表行插入触发的。我正在使用它来激活后期处理。如何触发不是我的问题。我在问如何最好地进行一些行内计算?
  • 仅使用公式即可轻松完成总字段。您还希望填写哪些其他字段?
  • 是的,但我想将提交的行保留为最后一行。添加一列公式会破坏这一点。请看截图。
  • 我在你编辑之前就知道了。我可以向您展示一种使用总字段公式的方法。但是,如果您想要其他字段,则需要显示一些脚本并解释其他字段、位置以及到目前为止您尝试过的内容...

标签: javascript google-apps-script google-sheets


【解决方案1】:

假设:

  • PRICE 在 A1 中
  • 行间没有空白单元格

策略:

  • 清除 B1:B
  • 计算 ColA 中的单元格数
  • 使用 INDEX/INDIRECT 通过 COUNT 创建动态范围
  • 使用带有数组字面量的 Arrayformula 来填充 Col B 直到最后填充的 ColA

示例公式:

B1:

=ARRAYFORMULA({"TOTAL";A2:INDEX(A:A,COUNTA(A:A))+1500})

【讨论】:

  • 感谢您的示例。我不熟悉这些电子表格公式,所以我将不得不查找它们。 b1 中只需要一个公式吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多