如何捕获工作表中的上次更新

时间:2014-03-30 07:10:20

标签: google-apps-script google-apps

我有三个Google表单,它们将数据提交到电子表格中的不同表单。提交数据时,Google表单会在第一列中写入时间戳。我的触发功能将提交数据的电子邮件通知发送到GForm的电子表格。我需要一个不同的通知内容,具体取决于提交数据的电子表格表。

我想到了这个:

  1. 获取电子表格的最新更新
  2. 将第一张表格切换为操作表
  3. 查找日期等于操作表中的上次更新数据 如果未建立日期,请切换到下一页并查找上次更新日期 ... ... 如果成立日期
  4. 获取行动表的名称
  5. 发送与内容相关的通知
  6. 所以,认为这太难了。当然,我可以使用许多脚本创建许多电子表格,每个脚本都会发送不同的通知,但它不符合人体工程学。 谢谢!

2 个答案:

答案 0 :(得分:0)

如果来自您的表单,您可以获取timeStamp和记录响应的行号。根据这两个标准,我认为它很难找到合适的表格,只需检查每张表格中的这个行号并比较时间值,如果有匹配则你得到它!

您可以像这样获取eventinfo中的值:

  Logger.log('row = '+e.range['rowEnd'] + ' timestamp = '+e.namedValues['Timestamp'] )

我没有进一步测试,所以请在这里更新它是否按预期工作(或不是)。

答案 1 :(得分:0)

也许你可以添加一个onEdit触发器:

function onEdit() {
    var s = SpreadsheetApp.getActiveSheet();
    var sheet_name = s.getName();

    //you can also add a code to get row and col, timestamp, etc.
}

注意:尚未测试此代码。我认为这就是你想要的。