当应用脚本更改Json网址中的数据时,自动更新Google电子表格中的数据

时间:2015-07-11 03:39:23

标签: json caching google-apps-script google-sheets

我正在使用" Trevor Lohrbeer的导入.JSON(@FastFedora)for ref."用于将JSON Feed导入Google电子表格的库。

简单地说,我只是将函数= ImportJSON(url,query,options)输入到单元格中,单元格在那里返回数据。

一切都很好但是当网址中的JSON数据发生变化时,Google电子表格中的数据不会自动更新。我必须再次将该函数重新输入到单元格中或手动刷新脚本以完成它。

那么有人可以向我提出一些解决方案吗?

2 个答案:

答案 0 :(得分:0)

只有在引用的单元格发生更改时,才会重新计算表格中的UDF。关于1有一些建议,我建议设置每次重新计算工作表的触发器:

  • 重新打开它
  • 更改单元格 - 取决于您使用数据的程度
  • 使用时间驱动的脚本定期重新计算

答案 1 :(得分:0)

问题解决了。

我使用T J回答的方法和建议链接。 我在原始函数中添加了一个额外的参数,如$ A $ 1

=myFunction(firstParam, $A$1)

并在我的gs中再添加一项功能

function onEdit(e)
{SpreadsheetApp.getActiveSheet().getRange('A1').setValue(Math.random());}

然后当工作表中有任何编辑或触发onedit(e)时,将更新单元格。

最后,我使用触发计时器每分钟触发onedit以使数据保持更新!

谢谢!

PS:以前,触发设置对我来说不起作用,因为importjson函数仅用于触发整个importjson.gs,而不仅仅是触发功能,就像触发菜单中的设置一样。