google-apps-script - 如何知道点击了哪个菜单项?

标签 google-apps-script google-sheets menu

我正在通过谷歌电子表格中的 REST 调用创建一个动态自定义菜单。每次打电话我都会收到不同的运动,我想将它们用作菜单项

  // sample sports array
  var menuItemsArr = ['Footbal', 'Tennis', 'Swimming'];

  var menu = SpreadsheetApp.getUi().createMenu("Sports");
  for (i in menuItemsArr){
      menu.addItem(menuItemsArr[i],'createSheet')
       .addSeparator()
  }
  menu.addToUi();

当用户点击菜单项时,我想创建一个带有标题的新工作表 - 被点击的运动。因此,如果用户选择网球,我想创建一个名为网球的工作表。

是否有可能知道点击了哪个菜单项(以某种方式获取项目的名称(网球),或者至少是被点击的菜单项的索引?

任何帮助将不胜感激!谢谢。

最佳答案

Google Apps 脚本 .createMenu 和 .createAddonMenu 能够通过名称作为字符串调用函数,并且仅在 Apps 脚本项目全局范围内查找具有该名称的函数。

另一种方法是使用带有 HTML 服务的对话框或边栏来创建您的用户界面。

关于google-apps-script - 如何知道点击了哪个菜单项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50946493/

相关文章:

google-apps-script - 如何阻止来自活跃用户的重复电子邮件?

javascript - GSheet 脚本要求

google-apps-script - 如何将一系列单元格存储到数组中?

javascript - 表单提交触发的 Google 脚本有时不起作用

css - 使用文本阴影过滤器在 IE 中链接单击区域问题

Delphi:像 FineReader 11 一样创建菜单(选项卡)

javascript - 为什么我在 Google Scripts 中对看似完全相同的输入执行 indexOf 操作会得到不一致的结果?

javascript - 从可能有或没有部落标签前缀的名字中获取真实姓名

c# - 将菜单项添加到另一个应用程序

javascript - for循环给多个变量赋值