1

我遇到类似于Google Product Forums上发布的问题。如何保留Google Spreadsheet副本的编辑权限?

这里给出的答案描述了一种方法,要求链接的收件人采取行动,自行制作Google Spreadsheet的副本。

有一个脚本,它为想要编辑Google Spreadsheet COPY的人创建个人文件夹。比的原谷歌电子表格复制到新创建的文件夹:

fileforanswers.makeCopy(fileforanswers.getName(), targetFolder); 

的COPY权限:

fileforanswers.setSharing(DriveApp.Access.ANYONE, DriveApp.Permission.EDIT)" 

的谷歌电子表格中包含1片。 为的谷歌电子表格“工作表”副本中的保护设置:

if (protection && protection.canEdit()) { protection.remove(); } 

对于“范围”是:

if (protection && protection.canEdit()) { protection.remove(); } 

该链接包含了谷歌电子表格的副本的ID。 当Google电子表格直接通过自己的链接访问Google电子表格时,只允许查看Google表格

上述设置是针对原始Google电子表格手动设置的。当原始Google Spreadsheet通过自己的链接以同样的方式通过自己的链接访问COPY时,Google表格允许编辑原始内容。

还需要在脚本中允许编辑Google Spreadsheet的COPY?

回答

0

.makeCopy方法返回复制文件。您的第二条代码行似乎解释了您所描述的内容,因为您正在对已复制的文件设置共享,而不是复制。

尝试设置返回的文件对象的权限:

var copyOfOriginal = fileforanswers.makeCopy(fileforanswers.getName(), targetFolder); 

copyOfOriginal.setSharing(DriveApp.Access.ANYONE, DriveApp.Permission.EDIT)" 
+0

感谢您的帮助。有一个变化,但没有解决方案。屏幕截图 - 之前复制(https://drive.google.com/drive/folders/0B6aDIsqDzW58ajh6VEM5YjlCYlU);之后复制(https://drive.google.com/drive/folders/0B6aDIsqDzW58N05RV1pOZGJxNXc)保持不变 - 任何计算机/任何操作系统(MSW7/Linux(Ubntu)上都可以进行原始编辑,不受任何限制 – Istvan

+0

是之前可编辑的原始版本脚本是否全部? – Jonathon

+0

是的,原来手动创建的,权限,保护也是手动设置的,它是可编辑的,没有任何限制 – Istvan