【问题标题】:ImportHTML won't update dataImportHTML 不会更新数据
【发布时间】:2020-10-19 15:08:31
【问题描述】:

我正在尝试使用 Google 电子表格中的 ImportHTML 定期更新数据。标准的 ImportHTML 代码每小时更新一次太慢了,所以我找到了一些谷歌脚本来每分钟更新一次。 (我应该提到我不是开发人员,所以我有点盲目操作)

但是,脚本不会用新数据替换旧数据(这是我们的想法)。我需要从电子表格中删除所有数据以更新信息。在我看来,脚本正在执行,但在单元格已填满时根本不会覆盖。这是我正在使用的脚本:

function myFunction() {
  var sh = SpreadsheetApp.getActiveSheet();
  var r = "A1";
  var insertDataOption = 'overwrite';
  var f = '=ImportHTML("URL";"table";1)';
   sh.getRange(r).setFormula(f) .onChange;
}

希望能帮到你,谢谢

【问题讨论】:

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


【解决方案1】:

如果您添加相同的公式,它可能不会触发 IMPORTHTML 更新。要使其正常工作,首先您可以清除包含 IMPORTHTML 公式的单元格,在本例中为 A1,强制更新电子表格,然后添加公式。

function myFunction() {
  var sh = SpreadsheetApp.getActiveSheet();
  var r = "A1";
  var insertDataOption = 'overwrite';
  var f = '=ImportHTML("URL";"table";1)';
  var range = sh.getRange(r);
  range.clear();
  SpreadsheetApp.flush();
  range.setFormula(f);
}

另一方面,如果您已经在使用 Google Apps 脚本,那么您可以使用 Fetch Service 来完成相同的工作,而不是使用 IMPORTHMTL。这将需要更多编码,但您可以更好地控制电子表格的更新频率。

资源

相关(最近的优先)

【讨论】:

  • 嗨鲁本,非常感谢!您的代码似乎运行良好!也会研究 Fetch 服务,因为我正在尝试更加熟练地使用 Apps 脚本,无论是个人还是专业。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-12
  • 1970-01-01
  • 1970-01-01
  • 2016-11-21
  • 2017-06-23
  • 1970-01-01
相关资源
最近更新 更多