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

Google Sheets:基于ShippingDoc的ID值标记Orders对应行背景色的需求

嘿,这个需求完全可以用Google Apps Script搞定,刚好能实现你要的「标记所有选中过的ID对应单元格」的效果,具体步骤我给你理清楚:

实现步骤

1. 打开脚本编辑器

  • 打开你的Google Sheets文档,点击顶部菜单栏的「扩展程序」>「Apps Script」,进入脚本编辑器页面。

2. 替换默认代码

把编辑器里自带的function myFunction()代码删掉,粘贴下面的脚本:

function onEdit(e) {
  // 获取当前编辑的单元格和工作表信息
  const editedRange = e.range;
  const activeSheet = editedRange.getSheet();
  
  // 只响应ShippingDoc工作表C2单元格的编辑操作
  if (activeSheet.getName() === "ShippingDoc" && editedRange.getA1Notation() === "C2") {
    const selectedId = editedRange.getValue();
    if (!selectedId) return; // 如果C2是空的,直接退出不执行
    
    // 拿到Orders工作表对象
    const ordersSheet = e.source.getSheetByName("Orders");
    // 获取Orders表A7:A区域的所有ID值
    const idListRange = ordersSheet.getRange("A7:A");
    const idValues = idListRange.getValues();
    
    // 遍历查找匹配的ID对应的行
    for (let i = 0; i < idValues.length; i++) {
      if (idValues[i][0] === selectedId) {
        // A7是第7行,所以匹配项的行号是i+7
        const targetRowNum = i + 7;
        // 设置该单元格背景为绿色
        ordersSheet.getRange(targetRowNum, 1).setBackground("#00ff00");
        break;
      }
    }
  }
}

3. 保存并测试

  • 点击脚本编辑器顶部的保存按钮,给这个脚本起个好记的名字(比如「MarkSelectedOrderIds」)。
  • 返回你的Sheets文档,在ShippingDoc的C2单元格选择或输入Orders表A7:A里的ID,就能看到Orders表中对应ID的单元格立刻变成绿色;切换其他ID时,之前标记的绿色会一直保留,新选中的ID对应单元格也会变成绿色。

小补充

  • 脚本里用的绿色是纯绿#00ff00,如果你偏好浅绿或者其他色调,直接把这个颜色码换成你想要的十六进制值就行(比如#90EE90是柔和的浅绿)。
  • 这个脚本是自动触发的,只要你编辑ShippingDoc的C2单元格,它就会自动运行,不用手动点执行按钮。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 17:37:39