Google 电子表格脚本权限错误
Google Spreadsheet Script Permission Error
为什么我不能创建这个脚本?
function setValueTest(value) {
SpreadsheetApp
.getActiveSpreadsheet()
.getSheetByName('sheet1')
.getRange('D20')
.setValue('Hello');
return(value);
}
错误信息:
Error: Exception, You do not have permission to call setValue (line 11).
但如果我“没有权限”,为什么我可以运行其他脚本?这也定义了值
但如果我这样做我可以(它不能):
function setValueTest(value) {
return(value);
}
我可以毫无问题地创建这个函数:
function setValueTest(value='five') {
SpreadsheetApp
.getActiveSpreadsheet()
.getSheetByName('sheet1')
.getRange('D20')
.setValue('Hello');
Logger.log(value);
return(value);
}
和运行它:
Execution log
2:58:25 PM Notice Execution started
2:58:25 PM Info five
2:58:26 PM Notice Execution completed
我什至 运行 使用这个简单的触发器。只要它访问的电子表格是它绑定的电子表格,它就会 运行。
function onEdit(e) {
e.source.toast('entry');
const sh = e.range.getSheet();
if (sh.getName() == "Sheet0" && e.range.columnStart == 1 && e.range.rowStart == 1 && e.value == "TRUE") {
e.range.setValue(false);
e.source.toast('Flag1');
setValueTest();
}
}
所以我想我无法用您的代码重现您的问题。
为什么我不能创建这个脚本?
function setValueTest(value) {
SpreadsheetApp
.getActiveSpreadsheet()
.getSheetByName('sheet1')
.getRange('D20')
.setValue('Hello');
return(value);
}
错误信息:
Error: Exception, You do not have permission to call setValue (line 11).
但如果我“没有权限”,为什么我可以运行其他脚本?这也定义了值
但如果我这样做我可以(它不能):
function setValueTest(value) {
return(value);
}
我可以毫无问题地创建这个函数:
function setValueTest(value='five') {
SpreadsheetApp
.getActiveSpreadsheet()
.getSheetByName('sheet1')
.getRange('D20')
.setValue('Hello');
Logger.log(value);
return(value);
}
和运行它:
Execution log
2:58:25 PM Notice Execution started
2:58:25 PM Info five
2:58:26 PM Notice Execution completed
我什至 运行 使用这个简单的触发器。只要它访问的电子表格是它绑定的电子表格,它就会 运行。
function onEdit(e) {
e.source.toast('entry');
const sh = e.range.getSheet();
if (sh.getName() == "Sheet0" && e.range.columnStart == 1 && e.range.rowStart == 1 && e.value == "TRUE") {
e.range.setValue(false);
e.source.toast('Flag1');
setValueTest();
}
}
所以我想我无法用您的代码重现您的问题。