我有以下问题。
我有两个文件:
在源文件中有一个脚本(函数名为onEdit,使用onEdit事件触发)。当您将R3单元格(源文件)的值更改为其他“Advisor”时,应将整行复制到目标文件,但有时它可以正常工作,有时则不行。如果您更改了顾问字段的值一次并且它可以尝试多次尝试,并且肯定会在一段时间内出现权限问题。
当它不工作时,我得到msg,执行名为getFileById的函数的权限存在问题,该函数用于以下行:
var file = DriveApp.getFileById('1gGExeO2x8pqNzTPRvel8p-wwe-BDkdF5c6BFA8j_Py0');
任何想法如何解决问题以及为什么有时它可以正常工作?
答案 0 :(得分:0)
使用“简单”触发器的脚本可以修改它们绑定的文件,但无法访问其他文件,因为这需要授权。
See here to learn more about the restrictions on simple triggers.
答案 1 :(得分:0)
您可以按照以下步骤确保您拥有所有权限:
打开脚本项目。在左侧,点击项目设置
选中在编辑器中显示“appsscript.json”清单文件复选框。
在左侧,单击编辑器 <>。
在左侧,单击 appsscript.json 文件。
找到标记为 oauthScopes 的顶级字段。如果它不存在,您可以添加它。
oauthScopes 字段指定一个字符串数组。设置项目范围 使用,将此数组的内容替换为您希望它使用的范围。为了 例子:
{"oauthScopes": ["https://www.googleapis.com/auth/spreadsheets.readonly", "https://www.googleapis.com/auth/userinfo.email"], }
取自:https://developers.google.com/apps-script/concepts/scopes