新的/更新日期onEdit脚本

时间:2017-12-15 10:19:38

标签: google-apps-script google-sheets

我有一个Google表格脚本,当相邻的单元格值符合特定条件时会自动输入日期值。脚本如下:

function onEdit() {
  var cell = SpreadsheetApp.getActiveRange();
  var col = cell.getColumn();
  var row = cell.getRow();
  var value = cell.getValue();
  var col2 = SpreadsheetApp.getActiveSheet().getRange(row,col+1);
  if (col == 11 && (value=="Declined" || value=="Accepted" || 
value=="Completed" || value=="Withdrawn"))
    return col2.setValue(new Date());
}

这在第一次输入值时非常完美(例如空白到拒绝)。但是当它再次更新时 - 例如从Declined到Withdrawn,日期保持与第一次更改值相同。

我需要添加/更改哪些内容以确保每次更改单元格值时更新日期,而不是仅在第一次更新?

由于 亚历

1 个答案:

答案 0 :(得分:1)

脚本似乎工作正常。确保带有时间戳的列格式化为日期/时间(这样您可以在同一天内进行更改时实际看到差异)。

这是一个替代版本

function onEdit(e) {
if (e.range.columnStart == 11 && !!~["Declined", "Accepted", "Completed", "Withdrawn"].indexOf(e.value))
    e.range.offset(0, 1).setValue(new Date())
}
相关问题