编辑某些单元格时自动为单元格添加时间戳

Auto Timestamping a cell when certain cells have been editted

我正在尝试这样做,如果下面列出的电子表格中 I4:AI503 之间的任何单元格被编辑,它将更新列 AK 中的时间戳。

spreadsheet中使用了以下代码:

function onEdit() {
  var ss = SpreadsheetApp.getActiveSheet();
  if (ss.getName() == "RS3 Points") {
    var range = ss.getActiveCell();
    var col = range.getColumn();
    var row = range.getRow();
    if ((col >= 9) && (col <= 35) && (row > 3)) {
      var ActiveCell = ss.getRange().getRow()
      var TimestampCol = ss.getLastColumn()
      var formattedDate = Utilities.formatDate(new Date(), "GMT", "dd-MM-yyyy");
      var GetRange = ss.getRangeByName(ActiveCell, TimestampCol)
      GetRange.setValue(formattedDate)
    } 
  }
}

确保 AK 列的格式为日期。然后,试试这个代码:

function onEdit(e) {
if (e.source.getActiveSheet().getName() !== "RS3 Points" || 
    e.range.columnStart < 9 || e.range.columnStart > 35 || 
    e.range.rowStart < 4 || e.range
    .columnStart < e.range.columnEnd) return;
e.range.offset(0, 37 - e.range.columnStart).setValue(new Date());
}