Google电子表格上的自定义菜单

时间:2018-12-10 04:03:32

标签: google-apps-script

需要专家帮助,我们可以直接从菜单中运行功能吗,而不是子菜单,因此双击失败。 并且我想在下载开始后关闭对话框,下载后可以删除工作表吗? :

SpreadsheetApp.getActive().deleteSheet(.getSheetId(sID));

function onOpen(e) {
  SpreadsheetApp.getUi()
      .createMenu('Download')
      .addItem('Download', 'Download')
      .addToUi();
}           
function Download() {           
  var ssID = SpreadsheetApp.getActive().getId();
  var sID = SpreadsheetApp.getActive().getSheetId();            
  var URL = 'https://docs.google.com/spreadsheets/d/'+ssID+'/export?format=pdf&gid='+sID;

  var htmlOutput = HtmlService          
                  .createHtmlOutput('<a href="'+URL+'">Click to download</a>')
                  .setSandboxMode(HtmlService.SandboxMode.IFRAME)
                  .setWidth(160)
                  .setHeight(60);
  SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'Download');
}

1 个答案:

答案 0 :(得分:1)

如果您的意思是最顶层的菜单,那么答案是否定的。

您可以删除工作表,但必须先将电子表格放入垃圾箱。尽管我认为GSuite管理员有可能获得文件删除授权。我不知道我从来没有打扰过。

您可以使用google.script.host.close() Reference

关闭对话框
<a href="http://example.com" target="_blank" onClick="google.script.host.close();">Click Me</a>