如何打开从一个自定义菜单项谷歌的形式(How do you open a Google form f

2019-10-30 11:20发布

我是全新的,以谷歌剧本,我想创建一个谷歌表管理行情的创建....我创建了一个表格,将捕获的报价细节,我希望用户能够点击一个菜单在表的顶部项目“创建新报价”,这将打开窗体。

我可以代替使用什么命令创建菜单项时,这样是会打开窗体....我需要提及的任何位置表格ID下?

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp or FormApp.
  ui.createMenu('Quote Generator Menu')
      .addItem('Create New Quote', 'menuItem1')
      .addItem('Update Lists', 'updateLists')
      .addSeparator()
      .addSubMenu(ui.createMenu('Reporting')
          .addItem('Dashboard', 'menuItem2'))
      .addToUi();
}

function menuItem1() {
  SpreadsheetApp.getUi() // Or DocumentApp or FormApp.
     .alert('You clicked Create New Quote');
}

function menuItem2() {
  SpreadsheetApp.getUi() // Or DocumentApp or FormApp.
     .alert('You clicked Dashboard');
}

Answer 1:

一个快速和肮脏的方式。 在菜单中点击:

  1. 创建UI应用程序。
  2. 创建一个超链接到已发布的形式,指示用户点击链接以添加新的报价。
  3. 添加链接UI应用程序。
  4. 显示UI应用程序。

例:

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  ui.createMenu('Quote Generator Menu')
    .addItem('Create New Quote', 'showUrl')
    .addToUi();
}

// http://stackoverflow.com/questions/26815296
function showUrl(){
  var FORM_URL = "ENTER_FORM_URL_HERE";
  var app = UiApp.createApplication().setHeight(50).setWidth(200);
  app.setTitle("Submit New Quote");
  var link = app.createAnchor('Click to here to submit a new quote', FORM_URL);
  app.add(link);  
  var doc = SpreadsheetApp.getActive();
  doc.show(app);
}

在单击菜单弹出后UI提示的截图:



文章来源: How do you open a Google form from a Custom Menu Item