【发布时间】:2014-09-04 09:32:30
【问题描述】:
早上好,
我遇到了一段脚本的问题,该脚本将在数据表之后的第一个可用行处打开电子表格。我对此很陌生,但据我了解,onOpen 触发器不适用于具有 Activate() 方法的脚本(我假设是 getActiveRange() 和 setActiveRange() 等)。
我真的很想这样做,但我目前只能通过在工作表顶部放置一个按钮来实现,用户必须单击该按钮才能运行脚本。我不知道如何以不同的方式写作,并且花了很长时间在谷歌上搜索,但只得到对我没有多大帮助的东西。我的代码如下,非常感谢您在不使用 Activate() 方法的情况下编写它时提供的任何帮助。谢谢,MB
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var range = ss.getRange("A2");
var rowCount = range.getValue() + 3;
var newRange = ss.getRange("A" + rowCount);
SpreadsheetApp.setActiveRange(newRange); };
第 4 行的值是指单元格中的一个值,该值正在计算数据集中的行数(我在尝试使用脚本对此进行计数时遇到问题,因为数据集中还有其他列会抛出 getLastRow() 之类的函数)。
【问题讨论】: