如果在Google文档的onOpen函数中我通过id打开电子表格来创建电子表格对象,如果我使用菜单系统,如何将该对象传递给其他函数? (下面更长的解释)
我有一个谷歌文档脚本,它会在特定时间拍摄文档的快照,然后将其导出到.docx并使用快照的网址更新电子表格。这是由菜单选项启动的,如下所示:
function snapshot() {
//open the spreadsheet using id
var ss=SpreadsheetApp.openById('spreadsheet_id');
调用函数snapshot()
you do not have permission to call openbyid()
这会产生function onOpen(e) {
DocumentApp.getUi().createMenu('Senate Secretary Menu')
.addItem('Snapshot', 'snapshot')
.addToUi();
var ss=SpreadsheetApp.openById('spreadsheet_id');
}
错误
据我所知,谷歌脚本禁止在自定义函数中调用openbyid()(我将其解释为电子表格中的函数,但是whatevs)。 如果我改变onOpen函数以包含OpenById()调用它将起作用。
{{1}}
我的问题是如何将文件对象从onOpen函数传递给快照函数?
答案 0 :(得分:0)
对于可能也有这个问题的人。我从Google快速入门处获取了菜单模板,但它在我错过的标题注释块中有@OnlyCurrentDoc
标记。拿出来解决了我的问题。