通过Google Apps脚本发布Google电子表格

时间:2019-06-06 00:07:07

标签: google-apps-script

是否可以使用Google Apps脚本在网络上发布Google Spreadsheet?现在,我必须使用File> Publish to the web...手动进行操作。

我检查了所有Google Apps脚本参考和指南,但没有看到有关通过GAS自动化发布脚本的任何信息。

1 个答案:

答案 0 :(得分:2)

  • 您要使用Google Apps脚本实现File> Publish to the web...

如果我的理解是正确的,那么该示例脚本如何?

使用此脚本时,请在高级Google服务中启用Drive API。

示例脚本:

var spreadsheetId = "###"; // Please set this.
Drive.Revisions.update({published: true, publishedOutsideDomain: true, publishAuto: true}, spreadsheetId, 1);
  

Official document:

     
      
  • publishAuto:后续修订是否将自动重新发布。仅填充,并且只能针对Google文档进行修改。
  •   
  • 已发布:此版本是否已发布。仅填充,并且只能针对Google文档进行修改。
  •   
  • publishedOutsideDomain:此修订是否在域外发布。仅填充,并且只能针对Google文档进行修改。
  •   

注意:

    创建新的电子表格时,
  • 电子表格的修订ID为1作为默认值。并且通过publishAuto,当电子表格更新时,更新的电子表格会自动反映到已发布的电子表格中。
    • 我将它们用于此示例脚本。
    • 如果要修改此设置,请修改脚本。

参考文献:

如果我误解了您的问题,而这不是您想要的结果,我深表歉意。

编辑:

关于已发布电子表格的URL,当手动发布电子表格时,可以像https://docs.google.com/spreadsheets/d/e/2PACX-###/pubhtml那样检索URL。在这种情况下,2PACX-###不是电子表格ID。不幸的是,在当前阶段,该URL无法通过API检索。 Drive API v2之前已使用publishedLink进行了检索。但是现在,它无法检索。 When Drive API is updated from v2 to v3, publishedLink was removed.这是当前情况。

但是,作为一种解决方法,您可以使用电子表格ID创建已发布电子表格的URL。请检查以下网址。

    https://docs.google.com/spreadsheet/pub?key=### spreadsheetId ###

您可以使用上述URL访问已发布的电子表格。