1

我对电子表格的 Google 脚本有疑问。我通过资源菜单在编辑上安装了一个脚本。该脚本将一些单元格从未受保护的工作表复制到受保护的工作表。当我登录到我的帐户(我是电子表格的所有者)时,该脚本可以正常工作,但在从无权访问受保护工作表的协作者帐户运行时会遇到权限错误。脚本不应该以我(帐户所有者)身份运行并且不会遇到权限问题吗? 在同一电子表格中运行onFormSubmit的另一个脚本能够编辑受保护的协作者提交表单时的工作表,即使他无权访问受保护的工作表。这表明问题不在于权限本身,而是问题特定于 onEdit 触发器,对吧?

4

2 回答 2

2

这是预期的行为。onEdit 触发器是三个“简单触发器”之一。

来自文档:“这些简单的触发器响应 Google 电子表格中的操作而运行,它们以活动用户的身份运行。例如,如果 Bob 打开电子表格,那么 onOpen 函数将以 Bob 身份运行,无论是谁将脚本添加到电子表格. 出于这个原因,简单的触发器被限制在他们被允许做的事情上:

  • 当电子表格以只读模式打开时,它们无法执行。
  • 他们无法确定当前用户。
  • 他们无法访问任何需要以该用户身份进行身份验证的服务。例如,谷歌翻译服务是匿名的,可以通过简单的触发器访问。Google 日历、Gmail 和协作平台不是匿名的,简单的触发器无法访问这些服务。
  • 他们只能修改当前的电子表格。禁止访问其他电子表格。
于 2012-12-05T21:56:55.670 回答
-1

必须使用已安装的触发器才能工作

于 2019-04-06T21:02:06.620 回答