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

如何让Google Sheets脚本从第二行开始输出更新时间

解决Google Sheet脚本仅从第二行开始记录更新时间的问题

你只需要在脚本里加一行行号判断逻辑,就能让脚本只对第二行及以后的编辑操作生效,修改后的代码如下:

/** @OnlyCurrentDoc */
function onEdit(e){
  const sh = e.source.getActiveSheet();
  // 仅当编辑的行是第二行及以后时,才执行日期写入
  if (e.range.rowStart >= 2) {
    sh.getRange('A' + e.range.rowStart)
      .setValue(new Date())
      .setNumberFormat('MM/dd/yyyy HH:MMam/pm');
  }
}

关键说明(针对新手):

  • e.range.rowStart是脚本自带的属性,代表你刚才编辑的单元格所在的行号(比如编辑A1时,这个值是1;编辑B3时,这个值是3)。
  • if (e.range.rowStart >= 2)就是判断条件:只有行号大于等于2时,才会执行大括号里的「写入日期」操作;如果编辑的是第一行(行号为1),脚本会直接跳过,不会修改A列内容。
  • 你之前尝试的rowStart(2)是错误写法——rowStart是一个数值属性,不是函数,不能加括号调用;rowStart > 0的条件太宽松(第一行也满足),所以达不到效果。

修改后保存脚本,直接在表格第二行及以后的单元格编辑内容测试即可,第一行编辑不会触发日期写入。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 15:05:15