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

编辑任意工作表触发Verify表对应行时间戳问题求助

解决方法

问题根源是代码未校验触发编辑事件的工作表是否为Verify,导致任意工作表的第9列被编辑时,都会在Verify表对应行生成时间戳。修改后的代码如下:

function onEdit(e) {
  // 获取当前触发编辑的工作表
  var activeSheet = e.range.getSheet();
  var row = e.range.getRow();
  var col = e.range.getColumn();

  // 仅当编辑的是Verify表的第9列,且对应第11列无值时才添加时间戳
  if (activeSheet.getName() === "Verify" && col === 9) {
    var stampCol = activeSheet.getRange(row, 11);
    if (!stampCol.getValue()) {
      var tz = e.source.getSpreadsheetTimeZone();
      var date = Utilities.formatDate(new Date(), tz, 'dd-MM-yyyy hh:mm:ss');
      stampCol.setValue(date);
    }
  }
}

关键修改说明

  • 新增activeSheet变量获取当前编辑的工作表,替代直接固定获取Verify表的逻辑
  • 增加判断条件activeSheet.getName() === "Verify",确保只有编辑Verify表时才执行时间戳逻辑
  • 调整逻辑顺序,先判断工作表和列,再检查第11列是否为空,避免不必要的范围获取

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 15:05:56