-1

我有一个基本功能(我只保留相关代码):

function list() {    
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  ss.getRange("Analyse!B1").setBackground("red");  
}

我在这样的单元格中调用该函数:=list()

错误:您无权调用函数列表


我得到了上面的弹出窗口,要求我授权,我接受了,没有什么改变总是一个错误:

在此处输入图像描述

4

2 回答 2

0

您不能从自定义函数中调用诸如 setBackground() 之类的函数。

当您将 Apps 脚本代码作为自定义函数运行时,它会以一组有限的“安全”权限运行,这就是为什么不会提示您授权脚本的原因。

自定义函数与调用表交互的唯一方法是返回单个值或二维数据数组,这些数据将从调用单元格的位置写入。

请参阅我对这个类似问题的回复:如何更改运行函数的单元格格式 - Google Sheets Script Editor

如果您必须更改背景颜色或执行其他类型的操作,则需要以其他方式触发该功能,例如从菜单选项或侧边栏,这将触发授权流程并以完全权限运行。

于 2018-01-22T21:44:22.513 回答
0

这是一个已知错误,可能会影响用户在同一浏览器中登录多个 Google 帐户的脚本?

打开谷歌浏览器,进入菜单并选择新建隐身窗口。在这里打开同一个 Google 工作表并再次运行脚本。

于 2018-01-23T07:23:04.667 回答