即使可安装触发器设置为另一个功能,onOpen是否已运行?

时间:2017-05-25 15:22:48

标签: google-apps-script google-sheets google-docs

我有一个谷歌电子表格连接到谷歌表格。

在我拥有的电子表格绑定脚本和onOpen中,如下所示:

function onOpen() {
  SpreadsheetApp.getUi() // Or DocumentApp or FormApp.
      .createMenu('Configura Gestione NC')
      .addItem('Invio eMail', 'openDialog1')
      .addToUi();
}

function openDialog1() {
 var ui = SpreadsheetApp.getUi();
  var response = ui.prompt('Inserisci la mail che riceverà tutte le comunicazioni:', 'Valore attuale: ' + PropertiesService.getScriptProperties().getProperty('emailSupervisore'), ui.ButtonSet.OK_CANCEL);

 if (response.getSelectedButton() == ui.Button.OK) {
      PropertiesService.getScriptProperties().setProperty('emailSupervisore', response.getResponseText());
     } 
    }

myScript(e){
    var SS = SpreadsheetApp.getActiveSpreadsheet();
    and do other things
}

我在提交表单时运行的myScript(e)函数上设置了一个可安装的触发器,因为我需要截取表单响应。当我填写并发送表格时,我收到错误:

Cannot call SpreadsheetApp.getUi() from this context.

即使在myScript(e)上设置了触发器,是否仍然运行onOpen?

在我的myScript(e)中,我没有调用SpreadsheetApp.getUi()...是否在脚本中自动调用onOpen?

是否有一种解决方法可以使SS自定义菜单和myScript功能协同工作?

0 个答案:

没有答案