onEdit功能是否适用于新版Google表格?

时间:2014-01-26 17:48:40

标签: google-apps-script google-sheets

我在旧的和旧的Google表格上都尝试了以下功能,但它只适用于后者:

function onEdit() {
  var s = SpreadsheetApp.getActiveSheet();
  var cell = s.getActiveCell();
  var val = cell.getValue();  
  var icol = cell.getColumn();
  if (icol == 8){
    if (val == "Em contacto"){
      var roar = cell.getRow();
      var tcell = s.getRange(roar,14);
      var date = Utilities.formatDate(new Date(), "GMT-3", "dd/MM/yyyy HH:mm");
      tcell.setValue(date);
    };
  };
}

只要使用字符串“Em contacto”编辑H列中的单元格,它就会向N列添加时间戳。

是否有不同的方法可以在不使用旧纸张的情况下完成此操作?

2 个答案:

答案 0 :(得分:0)

某些电子表格服务方法存在一些已知问题

https://developers.google.com/apps-script/migration/sheets#issues_with_individual_methods

在您的特定情况下,调用s.getActiveCell()将返回不正确的范围(在我的测试中,它总是row = 1,column = 1)。

这是一个耻辱,一个问题意味着我无法升级我的一些床单: - (

答案 1 :(得分:0)

嗯,onEdit触发器确实存在一个特定的已知问题:

https://developers.google.com/apps-script/migration/sheets#onedit_triggers