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

求助:Google Apps Script实现H列选"Won"时自动填充W列日期

谷歌表格自动记录决策日期解决方案

常见失败原因

  • 未准确判断编辑的是H列(Award Status列)
  • 单元格值匹配逻辑错误(比如大小写不匹配、空格问题)
  • 未限定仅当值变为"Won"时触发更新
  • 误用需要授权的API导致简单触发器失效

正确的onEdit脚本代码

function onEdit(e) {
  // 获取编辑事件的相关对象
  const range = e.range;
  const sheet = range.getSheet();
  const editedValue = e.value;
  const row = range.getRow();
  const col = range.getColumn();

  // 仅处理H列(第8列)且值改为"Won"的情况,跳过表头行(假设表头在第1行)
  if (col === 8 && editedValue === "Won" && row > 1) {
    // 定位到对应行的W列(第23列)
    const targetCell = sheet.getRange(row, 23);
    // 设置当前日期,若需要特定格式可改用Utilities.formatDate
    targetCell.setValue(new Date());
    // 可选:锁定日期单元格防止误编辑
    targetCell.protect().setDescription("自动记录的决策日期,不可编辑");
  }
}

关键说明

  • 简单触发器onEdit无需手动授权,只要函数名正确就能自动触发
  • 代码里跳过了第1行(表头),如果你的表头不在第1行,自行修改row > 1的判断条件
  • 若需要日期格式统一,可替换setValue(new Date())为:
    const formattedDate = Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "yyyy-MM-dd");
    targetCell.setValue(formattedDate);
    
  • 确保编辑的H列下拉值是精确的"Won"(大小写、空格完全一致),否则匹配会失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 17:02:45