如何在编辑后发布它旁边的编辑日期的单元格?在使用Google Apps脚本的Google表格中

时间:2020-10-11 16:59:40

标签: javascript google-apps-script google-sheets

这就是我所拥有的:

function onEdit(e) {
  
  var range = e.range;
  var val = range.getValue();
  var row = range.getRow();
  var col = range.getColumn();
  var shift = 1;
  var ss = SpreadsheetApp.getActiveSheet().getRange(row, (col+shift));
  
  if (col == 3){
    ss.setValue(new Date()).setNumberFormat("MM/dd/yyy hh:mm:ss");
  }
  if (val == ""){
    ss.setValue("").setNumberFormat("MM/dd/yyy hh:mm:ss");
  }
}

正在发生的事情:

enter image description here

enter image description here

但是,当我在条形码中编辑单元格时,它不会更新时间戳...

1 个答案:

答案 0 :(得分:2)

function onEdit(e) {
  //e.source.toast("Entry");
  //console.log(JSON.stringify(e));
  const sh=e.range.getSheet();
  if(sh.getName()=="Sheet1" && e.range.columnStart==3 && e.value) {
    e.range.offset(0,1).setValue(Utilities.formatDate(new Date(),Session.getScriptTimeZone(),"MM/dd/yyyy HH:mm:ss"));
  }
}

我想您不想在所有工作表中都这样,但是我可能是错的。