簡體   English   中英

基於多個單元格的 AutoTimeStamp

[英]AutoTimeStamp based on multiple cells

我有一個文檔,當從 B 列到 G 列的任何單元格中輸入數據時(從第 4 行開始),我希望 A 行有一個時間戳,表明該數據何時開始並且不更改。 但是,如果該行被清除,我希望刪除時間戳並能夠重新輸入新數據。 我在多張紙上使用它。 我做了 IFS function 並且它有效,但是人們正在覆蓋和刪除它,所以我正在嘗試編寫腳本。 我嘗試修改了一些我在網上找到的腳本,並使用了一些我記得的大學時代的東西,但效果並不好,我需要一些幫助。 謝謝!

function onEdit(e) {
  var ss = SpreadsheetApp.getActiveSheet();  
  var range = ss.getRangeList(['B4:B', 'C4:C','D4:D','E4:E', 'F4:F', 'G4:G']);
  if ( e.range) return;
  e.targetColumn = 1
  .setValue (new Date("HH:mm"));
}

function onEdit(e) {
  if ( e.range.columnStart !== 2 && e.range.columnStart !== 3 
    && e.range.columnStart !== 4 && e.range.columnStart !== 5 
    && e.range.columnStart !== 6 && e.range.columnStart !== 7) return;
e.range.targetColumn = 1
    .setValue(new Date());
}

(更新)試試這個:

function onEdit(e) {
  const sh = e.range.getSheet();
  if (sh.getName() == "Your sheet name" && e.range.columnStart > 1 && e.range.columnStart < 8 && e.range.rowStart > 3) {
    if(sh.getRange(e.range.rowStart,2,1,sh.getLastColumn() -1).isBlank() ) {
      sh.getRange(e.range.rowStart(),1).clearContent();
    } else {
      sh.getRange(e.range.rowStart,1).setValue(new Date());
    }
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM