Google表格OnEdit() - 您无权调用showModalDialog

Mis*_*Sab 3 google-sheets google-apps-script google-apps-script-simple-triggers

从本月初开始,这段代码就没有用了

function onEdit(e){    
              var html = HtmlService.createTemplateFromFile( 'MyHtmlFile' )
              .evaluate()
              .setWidth( 800 )
              .setHeight( 400 );
              SpreadsheetApp.getUi() // Or DocumentApp or FormApp.
              .showModalDialog( html, 'My page title' ); 
}
Run Code Online (Sandbox Code Playgroud)

当我编辑电子表格的单元格时,弹出窗口显示但是我在控制台中出现此错误:

Google Apps脚本:您无权调用showModalDialog

ran*_*rts 10

onEdit()会必须是一个可安装的触发器,因为它使用的是需要授权的服务.

注意:onEdit()其用作可安装触发器时重命名以避免可能的问题

与简单的触发器一样,可安装的触发器允许Apps脚本在发生特定事件(例如打开文档)时自动运行功能.但是,可安装触发器比简单触发器提供更大的灵活性:它们可以调用需要授权的服务,......

手动管理触发器:

要通过脚本编辑器中的对话框手动创建可安装触发器,请按照下列步骤操作:

  1. 从脚本编辑器中,选择"编辑">"当前项目的触发器".
  2. 单击以下链接:未设置触发器.点击这里,马上添加一个.
  3. 在"运行"下,选择要触发的功能名称.
  4. 在"事件"下,选择"时间驱动"或脚本绑定的Google App(例如,"从电子表格").
  5. 选择并配置要创建的触发器类型(例如,每小时运行的小时计时器或打开的触发器).
  6. (可选)单击"通知"以配置触发功能失败时通过电子邮件联系的方式和时间.
  7. 单击保存.

  • 请注意,Google最近更改了可安装触发器的行为:/sf/ask/3323596811/ / (3认同)