使Google电子表格公式无限重复

时间:2013-09-26 22:19:20

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

好的,我有一个Google表格可以将信息转储到电子表格中。在每一行我都需要进行简单的计算。问题是我无法弄清楚如何在添加新行时在每个新行上重复公式。

是的我知道如何使用填充手柄复制公式而不是,但我希望它自动添加公式而不是我手动复制它。

例如,这用于跟踪时间,因此 及时 的单元格和 Out Time 的单元格每行。我想要一个名为 Time Spent 的专栏,该专栏将从时间中减去他们的时间,以确定他们花了多少时间。但由于行数无限,因此我无法进入并复制公式。

如果有人有任何想法,我会非常感激。我一直在四处寻找,我所能找到的只是人们说使用填充手柄手动复制公式,这不是我想要的。

2 个答案:

答案 0 :(得分:50)

假设 In Time 单元格位于A列,而 Out Time 单元格位于B列,并且您希望 Time Spent 位于C列中。将此公式放在单元格C2中(假设A1,B1和C1包含标题,而不是数据):

=ARRAYFORMULA(B2:B - A2:A)

ARRAYFORMULA函数指示电子表格在给定的范围内迭代所包含的公式,而没有像B2:B这样的最终数字的引用是指包含电子表格中所有剩余行的范围。

答案 1 :(得分:6)

如果由于某种原因你发现arrayformula在你的情况下很难使用,另一个选择是使用一个写有公式的查询在另一个工作表上创建一个镜像。

E.g。如果您在A列和B列中有数字以及将它们添加到一起的公式:

=query(Data!A:B, "select A, B, A + B")

这种方法的好处在于,您通常希望对表单数据进行聚合和汇总,并且可以通过在用于应用公式的同一查询中执行此操作,从而一举两得。 / p>

我会提到另一个在Google的查询语法功能上存在差距时过去很有用的技巧。实际上,您可以在将数组公式传递给查询函数之前将数组公式应用于数据,如下面的示例所示,其输出等效于上一个查询。

=query({Data!A:B, arrayformula(Data!A:A+Data!B:B)},
  "select Col1, Col2, Col3")

注意列不再用字母引用,而是用Col1,Col2等引用