我在执行Google表格中的脚本时遇到问题。
本来我已经为功能安装了触发器,但是我想进行复制但触发器不见了。我在G Suite开发人员中心中设置了可安装的触发器,现在尝试在Google表格的脚本编辑器中创建触发器,但是遇到权限问题。
我知道我可以在清单文件中编辑auth范围,但是它也没有用。
function onOpen(e){
var ssId = SpreadsheetApp.getActiveSpreadsheet().getId();
ScriptApp.newTrigger('makeDropDownMenu')
.forSpreadsheet(ssId)
.onOpen()
.create();
}
上面是我要执行的代码,上面写着“您没有调用ScriptApp.newTrigger的权限。所需的权限:https://www.googleapis.com/auth/script.scriptapp 在createTimeDrivenTriggers”
我该如何在脚本中安装触发器?
答案 0 :(得分:0)
您可以与此安装触发器。当您打开点差时,转到“我的菜单”,然后单击“创建触发器”。
function onOpen(){
SpreadsheetApp.getUi().createMenu("My Menu")
.addItem("Create Trigger","createTrigger")
.addToUi();
}
function createTrigger() {
var ssId = SpreadsheetApp.getActiveSpreadsheet().getId();
ScriptApp.newTrigger('makeDropDownMenu')
.forSpreadsheet(ssId)
.onOpen()
.create();
}
但是,如果您只是创建菜单而已,那么您可以像上面一样在onOpen()简单触发器中进行操作。如果我错过了你的观点,请提供更多指导。
答案 1 :(得分:0)
这类错误与您拥有的oauth范围有关。对于几乎所有范围,如果未在清单文件[1]中手动设置“ oauthScopes”字段,Apps脚本都会自动设置所需的oauth范围。您可以尝试从清单中删除“ oauthScopes”字段,并且Apps脚本可能会添加所需的作用域,或手动在清单中添加它们,如下所示:
"oauthScopes": [
"https://www.googleapis.com/auth/spreadsheets", //This one you should already have it
"https://www.googleapis.com/auth/script.scriptapp" //Thi is the one that was missing
]