按名称打开文件然后执行操作

时间:2015-09-18 08:53:53

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

我目前正在使用drive.makeCopy(Objects[i][1]);创建文件,其中Objects是我想从模板中创建的各种文件的名称。

该脚本在从模板制作这些文件时工作正常,但是在制作完每个文件后,我想打开新文件,隐藏其中的一些工作表并设置其权限。权限的地址保存在Objects[i][3]中,但我无法弄清楚如何打开这些新文件,然后相应地进行更改,然后关闭文件。

1 个答案:

答案 0 :(得分:0)

我假设通过drive.MakeCopy()你指的是File.MakeCopy()。这很简单,MakeCopy函数返回它创建的File对象。然后,您可以使用addEditor(),addViewer(),setSharing()等函数为此File对象设置权限。

因此,如果Objects [i] [3]包含应该能够编辑新文件的人的电子邮件地址,那么您可以这样做:

   var new_file = drive.makeCopy(Objects[i][1]);
   new_file.addEditor(Objects[i][3]);

使用它后,您不需要“关闭”文件,Apps Script会自动处理此问题。

请参阅: https://developers.google.com/apps-script/reference/drive/file#addEditor(String)

https://developers.google.com/apps-script/reference/drive/file#setSharing(Access,Permission)

https://developers.google.com/apps-script/reference/drive/file