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

Google Sheets:相邻单元格更新时自动添加多单元格时间戳

解决Google Sheets固定时间戳问题

直接给你改好的可用代码,顺便说下原来代码没生效的原因:

问题出在哪?

你之前改的代码有几个关键错误:

  • 工作表名称没换成你的「Payroll」,还是默认的"Your Sheet Name"
  • 列判断写的是<7,范围太宽,没有精准定位到D列(第4列)
  • 设置时间戳的单元格写死成了(1,2),也就是第1行B列,不是你需要的当前编辑行的E列

可用代码

复制下面的代码到Apps脚本编辑器:

function onEdit(e) {
  const sheet = e.range.getSheet();
  // 校验条件:Payroll工作表、编辑的是D列(第4列)、行号大于189
  if (sheet.getName() === "Payroll" && e.range.columnStart === 4 && e.range.rowStart > 189) {
    // 输入姓名时添加时间戳,删除姓名时可选清空时间戳
    if (e.value) {
      sheet.getRange(e.range.rowStart, 5).setValue(new Date());
    } else {
      sheet.getRange(e.range.rowStart, 5).clearContent();
    }
  }
}

怎么设置?

  1. 打开你的Payroll表格,点顶部「扩展程序」→「Apps脚本」
  2. 删掉编辑器里默认的代码,粘贴上面的代码
  3. 点击保存按钮,随便给项目起个名字(比如「签字时间戳」)
  4. 关闭脚本编辑器,回到表格测试:在D列190行及以下输入姓名,E列会自动生成固定时间戳(不会随时间变动)

补充说明

  • 这个用的是Google Sheets的简单触发器onEdit,不需要额外授权,只要经理能编辑自己的D列单元格,就能触发时间戳生成
  • 时间戳是直接写入单元格的静态值,不是公式,所以不会像NOW()那样自动更新

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 17:12:32