我对脚本有点新手,所以非常感谢能够提供我的问题洞察力的人 . 由于某些原因,我无法获取下面的Google脚本来触发我的Google Apps电子表格的onOpen .
我的电子表格中的工作表从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事件,但遗憾的是,只有当我从脚本编辑器手动触发它时,这个才有效 .
干杯 .
1 回答
不幸的是规格改变了 . 在新的电子表格中,如果从onOpen或onEdit触发器调用它们,则与activate相关的方法不再有任何效果 .
您可以在下面获得有关更改的更多详细信
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