我有一个Google电子表格,我已经使用该电子表格创建了Google表单。电子表格有两张:一张带有表单响应,另一张带有配置数据。附加到电子表格的是表单响应触发的Apps脚本脚本,它使用配置数据进行API调用。这个脚本完全按照我的意愿运行。
我编写了电子表格更改触发的脚本,尝试更新其中一个表单问题的选项。但是,使用FormApp.openById或FormApp.openByUrl会失败并显示"您无权调用..."。
是否有某种方法可以为表单提供电子表格更改触发的脚本权限?
或者是否有更好的设置来满足我的需求:在表单和脚本之间保持信息同步,根据表单响应进行api调用?
代码:
function onEdit(e) {
var activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();
// Do some work to get the configuration data. This works fine.
// Now try to get access to the form to update it
var responseSheet = activeSpreadsheet.getSheetByName('Form Responses');
// var form = FormApp.getActiveForm(); // returns null
var form = FormApp.openByUrl(responseSheet.getFormUrl());
...
}
最后一行失败了:
执行失败:您无权调用openByUrl