我是Google Apps脚本的新手,我正在努力尝试自动执行以前的手动过程。该脚本位于一张表格中,该表格采取表格回复,将其转换为文件,然后通过副本向受访者发送电子邮件。这是有问题的代码:
ServletContextListener
这是设置为在表单提交时触发,但不是在最后一行上运行脚本,它也为所有先前的响应运行。之前这种情况很好,因为将回复复制到单独的工作表并进行批量处理,但我对如何使其仅在新响应上运行感到迷茫。
有人能指出我正确的方向吗?
答案 0 :(得分:0)
第8行;在这一行var data = sheet.getRange(2, 1, sheet.getLastRow()-1, sheet.getLastColumn()).getValues();
中,您获得的范围为A2:无论最后一行和哪一列是什么,这都是为什么它会超越整个范围。
将其更改为var data = sheet.getRange(sheet.getLastRow()-1, 1, 1, sheet.getLastColumn()).getValues();
应该有效。
或者您可以使用onFormSubmit事件的e
参数。
var getSubmission = e.range.getValues();
查看e
参数的documentation,调试时可能很难使用它,但是当你挂起它时它非常有用它的。