我有一个谷歌应用程序脚本,它将信息提交到有组织的工作表,并希望创建一个包含工作表中所有信息的数据透视表。我可以这样做,但每当我向工作表提交一行新数据时,它都不会自动包含在数据透视表中。每次提交新的数据行时,我都必须手动更改数据透视表的范围。有什么办法可以让sheet / pivot表自动包含新的数据行吗?
答案 0 :(得分:5)
我只是通过指定列范围解决了这个问题。
例如,如果您在A到F列中有行数据,请将数据透视表的范围设置为SHEET!A:F
如果您现在添加行,这些列中的新数据将添加到数据透视表中。
答案 1 :(得分:2)
有一种方法。我已经完成了3年前在床单上的工作。
如果您使用Google表单提交新行,则无法使用。
如果您尝试以编程方式更新范围,则无法通过命名范围进行删除,然后重新添加,这会导致数据库上的#ref。
现在是好的部分。如果要按脚本添加新行,请不要将其附加到末尾。而是在末尾保留一个假行(零值使枢轴不受影响)并在它之前插入新行。您的范围(已命名或未命名)将更新。
即使对于谷歌表格案例,您也可以通过将所有空白行预先添加到响应表中来使其工作,并使命名范围也包括空白行。 享受!
答案 2 :(得分:1)
我在链接到表单的Google表格时遇到了同样的问题。我是怎么解决的:
编辑数据透视表范围,以在工作表的最后一行之后添加空行。
如果数据透视表数据范围为“工作表名称”!A1:S100,请将其更改为“工作表名称”!A1:S101。
向数据透视表中添加永远不会为空的列(在数据范围内)的过滤器,并设置该列的条件-“不为空”
如果您有一列“时间戳”(并且您确定它永远不会为空),则将此列添加到过滤器中,选择“按条件过滤” ,并将条件设置为“不为空” 。
这些步骤将过滤掉最后(空)行。当您向数据中添加新行时,数据透视表将自动更新,而您无需再次更新数据范围。
答案 3 :(得分:0)