Google脚本:创建文本文档后如何自动打开它

时间:2013-07-26 22:15:23

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

我已使用this script使用Google电子表格创建Google文本文档(如word文档)。但是,当我这样做时,从模板创建的新文本文档将放在默认的选择文件夹中。然后,我必须转到该文件夹​​,找到新文档并打开它。 百万美元的问题是:如何让知道创建的文本文档自动打开? (我认为,如果它不是Google文本文档而是电子表格,我应该使用'SpreadsheetApp.getActive()')。

感谢您的帮助,不,没有百万美元。

1 个答案:

答案 0 :(得分:1)

无法自动打开文档,也无法在没有用户执行操作的情况下打开文档(至少单击链接)。

您可以做的是在电子表格中显示一个弹出窗口,其中包含一个可以打开该文档的链接。

通过电子表格脚本执行此操作非常简单,请参阅to this postdocslist documentation。(使用doc ID访问docsList.getUrl()


编辑:在您的评论之后,这是一种自动隐藏弹出窗口的可能方法,我将其包含在一个完整的演示代码中。

function test(){
  var id = "1cZCL7T-enU0yJZnCb0WM0NeqXDHjnnBUyvs98vsyzwU";// test document (shared in view only)
  var Doc = DocsList.getFileById(id);
  showURL('Open document named "'+Doc.getName()+'"',Doc.getUrl());
}

function showURL(nameToShow,href){
  var app = UiApp.createApplication().setHeight(50).setWidth(300);
  app.setTitle("Show URL");
  var link = app.createAnchor(nameToShow, href);
  app.add(link);  
  var handler = app.createServerHandler('hide');
  link.addClickHandler(handler);// add serverHandler to the link itself
  var doc = SpreadsheetApp.getActive();
  doc.show(app);
}

function hide(){
  var app = UiApp.getActiveApplication().close();// close the popup window
  return app;// apply change
}