谷歌应用程序脚本:创建一个电子表格,其中显示新创建的文档ID

时间:2017-02-08 12:16:37

标签: google-apps-script google-sheets tags google-docs-api docstring

要轻轻一点,这是非常的菜鸟。所以我刚刚换了一个得到晋升的人,我是一名小老师,他真的很模糊地涉足这个问题。我已经成功创建了一个脚本,可以完成我需要的很多事情(所以现在想完成这项工作)。我的应用程序脚本为大型教程中的教师创建计划程序,以便他们可以标记它们并且一周进入并更改信息。 瞧:

var fichier = DriveApp.getFileById('IDGOESHERE');
var newFichier=fichier.makeCopy("YOURGRADE LITERACY PLANNER TERM 1 WEEK 1");
var num=newFichier.getId();
var doc=DocumentApp.openById(num);
var body = doc.getBody();
doc.replaceText("abc123","TERM 1 WEEK 1");

它现在运作得相当好,但我不知道如何重复它然后在文本中添加一个,所以我只是将它复制出来(每个学校周一个,而不是世界末日)。欢迎任何反馈。

我真正的问题是:我现在需要进入每个文件(如果不是数千个,将有数百个)并将每个文档链接到我们学校的网站。我的前任在表格中有链接,只是把它们放到了我们的网站上。有没有扩展脚本,以便它可以将每个新创建的文档的Web地址甚至谷歌文档ID发布到电子表格(或文本/文档)。

这可能是不可能的,但是如果它会令人惊讶,那么我将不得不每周手动链接所有文件,一年中每位教师一个。 谢谢!

1 个答案:

答案 0 :(得分:0)

是的,有。创建文档后,您可以调用3种非常有用的方法:

var name = doc.getName(); //returns the name in a string
var id = doc.getId(); //returns the id in a string
var url = doc.getUrl(); //returns a url to the document as a string

在云端硬盘应用中,您可能需要设置共享权限。

file.setSharing(DriveApp.Access.ANYONE, DriveApp.Permission.VIEW);

然后,您需要打开电子表格并为数据添加新行

sheet.appendRow([name, id, url]);