我对脚本编程有些新意,所以非常感谢任何能够提供我的问题洞察力的人。出于某种原因,我无法获取下面的Google脚本来触发onOpen for my Google Apps电子表格。
我的电子表格中的工作表从1月到12月从左到右。该脚本用于标识当前月份编号,然后使用该编号标识并设置打开电子表格时该月份的活动工作表。我从另一个帖子中逐字逐句地接受了它:Google Apps Spreadsheet open specific sheet based on current date (Month)
我只是创建一个新的电子表格,从“工具”下拉菜单中选择“脚本编辑器”,然后粘贴到下面的脚本中并保存。
/**
* Selects a monthly sheet
*/
function onOpen() {
var month = (new Date()).getMonth();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[month];
ss.setActiveSheet(sheet);
};
尝试将其命名为onOpen,并在重命名后向函数添加onOpen触发器。我可以在打开电子表格时触发其他onOpen事件,但遗憾的是,只有当我从脚本编辑器手动触发它时,这个才有效。
干杯。
答案 0 :(得分:1)
不幸的是规格发生了变化。 在新电子表格中,与激活相关的方法如果从onOpen或onEdit触发器调用则不再有任何效果。
您可以在下方获得有关更改的更多详细信息。
Google Apps脚本
第3928期:2014年4月22日, 新电子表格:activate()不会将活动工作表更改为onOpen服务功能事件 https://code.google.com/p/google-apps-script-issues/issues/detail?id=3928
发行说明 2014年4月17日, Document方法setSelection Sheet方法激活,如果从onOpen或onEdit触发器调用Spreadsheet方法setActiveRange和setActiveSelection不再有任何效果。 https://developers.google.com/apps-script/releases/#april_2014
bakcy0175