Google表格数据透视表未更新

时间:2015-06-01 13:23:21

标签: google-apps-script google-sheets pivot-table

我有一个谷歌应用程序脚本,它将信息提交到有组织的工作表,并希望创建一个包含工作表中所有信息的数据透视表。我可以这样做,但每当我向工作表提交一行新数据时,它都不会自动包含在数据透视表中。每次提交新的数据行时,我都必须手动更改数据透视表的范围。有什么办法可以让sheet / pivot表自动包含新的数据行吗?

4 个答案:

答案 0 :(得分:5)

我只是通过指定列范围解决了这个问题。

例如,如果您在A到F列中有行数据,请将数据透视表的范围设置为SHEET!A:F

如果您现在添加行,这些列中的新数据将添加到数据透视表中。

答案 1 :(得分:2)

有一种方法。我已经完成了3年前在床单上的工作。

如果您使用Google表单提交新行,则无法使用。

如果您尝试以编程方式更新范围,则无法通过命名范围进行删除,然后重新添加,这会导致数据库上的#ref。

现在是好的部分。如果要按脚本添加新行,请不要将其附加到末尾。而是在末尾保留一个假行(零值使枢轴不受影响)并在它之前插入新行。您的范围(已命名或未命名)将更新。

即使对于谷歌表格案例,您也可以通过将所有空白行预先添加到响应表中来使其工作,并使命名范围也包括空白行。 享受!

答案 2 :(得分:1)

我在链接到表单的Google表格时遇到了同样的问题。我是怎么解决的:

  1. 编辑数据透视表范围,以在工作表的最后一行之后添加空行。

    如果数据透视表数据范围为“工作表名称”!A1:S100,请将其更改为“工作表名称”!A1:S101。

  2. 向数据透视表中添加永远不会为空的列(在数据范围内)的过滤器,并设置该列的条件-“不为空”

    如果您有一列“时间戳”(并且您确定它永远不会为空),则将此列添加到过滤器中,选择“按条件过滤” ,并将条件设置为“不为空”

这些步骤将过滤掉最后(空)行。当您向数据中添加新行时,数据透视表将自动更新,而您无需再次更新数据范围。

答案 3 :(得分:0)

在我看来,干扰的是Pivot的过滤器部分(下面以红色突出显示)。

请确保您在没有任何过滤器的情况下进行测试...看看是否可行。然后一一添加您的过滤器,然后使用数据透视表。筛选器可能正在影响不更新的枢纽。

![enter image description here