我为协作者创建了一个脚本,用于google工作表。 当他们触发脚本时,它会提交表单响应,然后用于修改“中央”电子表格。
但是我遇到了许可问题,而且我还没有在网上找到方便的答案。
该脚本使用FormApp.openById([...]).createResponse().[....].submit().
问题来自于openById()
和openByUrl()
都需要运行脚本的人才能编辑表单。
(如在Form FormApp帮助页面上所述:返回具有指定URL的表单。如果URL无效或用户无权打开表单,则抛出异常。)< / p>
到目前为止,我找到了2个解决方法:
将表单的编辑权限授予我的协作者:然后将其分享给他们不应编辑的表单。
将表单的链接共享更改为“on”:尽管除了我之外没人知道表单ID,我真的不喜欢有人发现链接能够编辑表单的可能性
这些变通办法都没有完全满足我,我确信必须有一种方法可以通过脚本提交响应而无法编辑表单 - 就像发送谷歌表单答案的人通常无法编辑一样问题!只是我无法弄清楚如何。
非常感谢任何有关此问题的帮助!
谢谢,
麦克
答案 0 :(得分:1)
使用具有表单所有者或编辑者访问权限的帐户创建Web应用程序,并将其设置为以脚本所有者身份运行。有关一般指南,请参阅https://developers.google.com/apps-script/guides/web