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

Google Sheets复选框触发指定行数据自动填充至目标单元格的实现问询

解决Google Sheets复选框触发数据填充问题

直接给你可运行的脚本和操作步骤:

操作步骤

  • 打开你的Google Sheets,点击顶部菜单栏的「扩展程序」>「Apps Script」,进入脚本编辑器。
  • 删除默认的myFunction,粘贴下面的代码:
function onEdit(e) {
  // 获取触发编辑的单元格
  const editedRange = e.range;
  const sheet = editedRange.getSheet();
  
  // 只处理A列的复选框,且勾选状态为true的情况
  if (editedRange.getColumn() === 1 && editedRange.getValue() === true) {
    const targetRow = editedRange.getRow();
    
    // 这里对应你例子中的A20,可根据需要修改行号
    if (targetRow === 20) {
      // 获取B20、C20、D20的值
      const valueB = sheet.getRange(targetRow, 2).getValue();
      const valueC = sheet.getRange(targetRow, 3).getValue();
      const valueD = sheet.getRange(targetRow, 4).getValue();
      
      // 将值分别写入C9、C11、C13
      sheet.getRange(9, 3).setValue(valueB);
      sheet.getRange(11, 3).setValue(valueC);
      sheet.getRange(13, 3).setValue(valueD);
    }
  }
}

代码说明

  • onEdit是Google Sheets内置的简单触发器,编辑单元格时自动触发。
  • 先判断编辑的是A列(getColumn() === 1)且复选框被勾选(getValue() === true)。
  • 针对指定行(例子中是20行)提取对应列的数据,再写入目标单元格。

测试与注意事项

  • 保存脚本(给它起个名字,比如「CheckboxFillData」),首次运行会要求授权,按提示完成即可。
  • 如果需要支持多行复选框,只需要复制if (targetRow === 20) {...}这段,修改行号和对应的目标单元格就行。
  • 确保你的复选框确实在A列对应行,目标单元格位置和需求一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 04:25:40