setActiveSpreadSheet 文档中的示例非常清楚:
// The code below will make the spreadsheet with key "1234567890" the active spreadsheet
var ss = SpreadsheetApp.openById("1234567890");
SpreadsheetApp.setActiveSpreadsheet(ss);
但是在我的 Google Scripts 中实现它,什么也没有发生(甚至没有错误消息)..想法?
更新
根据下面的答案,很明显上面的代码对 UI 没有影响。 我试过这样做:
function goToEstimate(sheetId)
{
window.open('https://docs.google.com/spreadsheets/d/'+sheetId);
}
但后来我得到了这个错误:
ReferenceError: "window" is not defined.
有没有办法从 Google Apps 脚本中访问 JavaScript 全局窗口变量?
最佳答案
Apps 脚本无法使电子表格显示在客户端的浏览器中,因为它是服务器端脚本。
openById
方法返回电子表格的句柄,这使得可以从 Apps 脚本操作电子表格。这就是“打开电子表格”对脚本的意义。此操作对用户界面没有影响。
setActiveSpreadsheet
方法几乎没用;它只会更改当脚本调用 getActiveSpreadsheet
时将返回的电子表格。
一个对 UI 有影响的方法是 setActiveSheet
:如果它应用于用户在浏览器中打开的电子表格,该方法可以更改该电子表格的哪个选项卡/工作表用户。
关于javascript - 如何以编程方式打开新电子表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37616007/