You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets脚本需求:锁定首次编辑生成的日期值不更新

解决Google Sheets脚本锁定首次编辑日期的问题

没问题!要实现锁定首次编辑第3列(Col3)时生成的初始日期值,核心思路就是在设置时间戳前先检查目标单元格是否为空——如果已经有值了,就不再更新它。

修改后的完整脚本

function onEdit(event) {
 // assumes source data in sheet named Elisa-Miriam-Victor-Hanane-Sarah-Apoorva-Carlino
 // target sheet of move to named Archive
 var ss = SpreadsheetApp.getActiveSpreadsheet();
 var s = event.source.getActiveSheet();
 var r = event.source.getActiveRange();
 // Fill automatically Columns Q and R when PO number is provided in Column P.
 // In Q: generates the date of when the PO is mentioned; in R: it generates the PO folder name
 var sh=event.range.getSheet();
 var namesA=["Miriam","Elisa","Hanane","Sarah","Apoorva","Victor","Carlino"];
 if(namesA.indexOf(sh.getName())!=-1 && event.range.columnStart==16) {
 // when PO 1 N° is filled
 event.range.offset(0,1).setValue(new Date()).setNumberFormat("yyyy-MM-dd");
 event.range.offset(0,2).setFormula(Utilities.formatString('=CONCATENATE(TEXT(Q%s;"yyyy-MM-dd");" - ";P%s)',event.range.rowStart,event.range.rowStart));
 }
 if(namesA.indexOf(sh.getName())!=-1 && event.range.columnStart==3) {
 // when client is mentioned in Col 3
 event.range.offset(0,9).setFormula(Utilities.formatString('=IFERROR(vlookup(E%s;IMPORTRANGE("https://docs.google.com/spreadsheets/d/1zN99rXMltbMfD_OS22NxZApgvabTG-eRv7FOIS7pBvk/edit#gid=1560028291";"Treatment!A:E");2;false);"")',event.range.rowStart));
 // 新增判断:只有当目标单元格为空时,才设置时间戳
 const timestampCell = event.range.offset(0,31);
 if (!timestampCell.getValue()) {
   timestampCell.setValue(new Date()).setNumberFormat("yyyy-MM-dd HH:mm:ss");
 }
 }
}

关键修改点说明

  • 针对Col3的处理逻辑,我们新增了const timestampCell = event.range.offset(0,31);来缓存目标单元格对象,避免重复获取。
  • 用if (!timestampCell.getValue())判断单元格是否为空:如果单元格已经有内容(即首次编辑时生成的日期),就跳过设置操作;只有当单元格为空时,才生成并写入当前时间戳。

这样就能确保首次编辑Col3时生成的日期被永久保留,后续修改Col3的值不会再覆盖这个初始日期啦。

内容的提问来源于stack exchange,提问作者jdsr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 17:43:15