我显然做错了,因为世界上没有人以前似乎遇到过这个问题。
我想在工作表末尾插入一行时运行Google Apps脚本。我知道我需要使用onChange,所以这就是我所做的:
设置应在触发更改时运行的脚本:
function copyDownFormula(e)
{
Logger.log('something');
}
然后我在我的触发器中设置onChange触发器:
然后我安装了此代码,以便在使用onOpen触发器打开工作表时安装onChange触发器:
ScriptApp.newTrigger('onChange').forSpreadsheet(ss).onChange().create();
但由于某种原因,当我向表格中添加行时,没有任何反应。我访问日志并且它们是空的。我错过了什么吗?
答案 0 :(得分:0)
也许这样:
ScriptApp.newTrigger('onChange').forSpreadsheet(ss).onChange().create();
应该是这样:
ScriptApp.newTrigger('copyDownFormula').forSpreadsheet(ss).onChange().create();
试试这个:
function copyDownFormula(e)
{
Logger.log('ChangeType:%s Row:%s',e.changeType,SpreadsheetApp.getActiveSheet().getActiveRange().getRow());
}
在“编辑”菜单中的“当前项目”的“触发器”中设置触发器。它有效。
或者如果您愿意:
你用这个:
function triggerSetup()
{
ScriptApp.newTrigger('copyDownFormula').forSpreadsheet('SpreadsheetId').onChange().create();
}