我目前正在開發Google Apps腳本應用程序,並且想要使用OnOpen-Function添加UI。但問題是,OnOpen-Function只能作爲插件或作爲電子表格或文檔文件的綁定腳本工作。自動打開Google Apps腳本UI
我的問題是,如何將Apps腳本代碼作爲獨立應用程序運行以添加新文件?
到目前爲止,我嘗試過使用基於時間的觸發器,但應用程序腳本創建的觸發器太多。有沒有更好的方法來觸發新增文件的onOpen-Function?
這裏是我到目前爲止的代碼:
function tim(){
ScriptApp.newTrigger("createSpreadsheetEditTrigger")
.timeBased()
.everyMinutes(1)
.create();
}
function createSpreadsheetEditTrigger() {
var files = DriveApp.getFoldersByName("Development Lab").next().getFoldersByName("AppsScriptProgramm").next().getFoldersByName("Excel").next().getFiles();
while (files.hasNext()){
file = files.next();
ScriptApp.newTrigger('onOpen')
.forSpreadsheet(SpreadsheetApp.openById(file.getId()))
.onOpen()
.create();
}
}
function onOpen() {
SpreadsheetApp.getUi()
.createMenu('Metadata')
.addItem('Open', 'openDialog')
.addToUi();
}
function openDialog() {
var html = HtmlService.createHtmlOutputFromFile('Index')
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.setWidth(900)
.setHeight(400);
SpreadsheetApp.getUi()
.showModalDialog(html, 'Metadaten zum Dokument: '+ SpreadsheetApp.getActive().getName());
}
不要把它稱爲打開。即onTriggerOpen –