首页 > 解决方案 > Google Apps 脚本 - 从自定义菜单调用自定义函数 - 未嵌套

问题描述

这是我目前所在的位置:

function sendEmails() {
  //Function to send Emails
}

function onOpen() {
  // Funtion 1 to add custom menu
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp or FormApp.
  ui.createMenu('Custom Menu')
      .addItem('Reminder', 'menuItem1')
      .addToUi();
}

function menuItem1() {
  // Funtion 2 to add custom menu
   var sheet = SpreadsheetApp.getActiveSheet();

  sheet.getUi() // Or DocumentApp or FormApp.
     .sendEmails()
     .alert('Reminder Emails Sent!');
} 

这是我得到的错误:

TypeError:在对象表中找不到函数 getUi

我调用 sendEmails() 函数的主要方法是调度它。我找不到通过菜单手动调用此功能的方法。

你能帮我解决这个问题吗?

标签: javascriptgoogle-apps-scriptgoogle-sheets

解决方案


我想我们不需要在 UI 中调用 sendEmails,我们可以直接在菜单项选择上调用它。

像这样的东西:

function sendEmails() {
  //Function to send Emails
}

function onOpen() {
    SpreadsheetApp.getUi()
        .createMenu('Custom Menu')
            .addItem('Send Reminders', 'sendEmails')
            .addToUi();
}

推荐阅读