求Google Sheets触发式脚本与动态公式:匹配J列数据计算对应值
Google Sheets 动态公式生成脚本
下面是实现需求的完整脚本,基于Google Apps Script的onEdit简单触发器,无需额外配置:
function onEdit(e) { // 定义目标监控区域:J6到J10 const editedCol = e.range.getColumn(); const editedRow = e.range.getRow(); // 判断编辑的单元格是否在J6-J10范围内 if (editedCol === 10 && editedRow >= 6 && editedRow <= 10) { const sheet = e.source.getActiveSheet(); const i6Cell = sheet.getRange('I6'); // 根据J列单元格值决定写入公式或清空内容 if (e.value !== '') { const formula = `=ROUND(J${editedRow}/E${editedRow},2)`; i6Cell.setFormula(formula); } else { i6Cell.clearContent(); } } }
关键逻辑说明
- 触发范围限制:仅当编辑操作发生在J列第6-10行时,脚本才会执行后续逻辑
- 动态公式拼接:根据编辑单元格的行号,自动生成对应行的
ROUND(Jx/Ex,2)公式 - 空值同步处理:如果J列的目标单元格被清空,I6的内容也会同步清除
使用步骤
- 打开你的Google Sheets表格
- 点击顶部菜单栏「扩展程序」→「Apps 脚本」
- 删除默认代码,粘贴上述脚本
- 点击保存按钮,为项目命名(比如「动态公式生成工具」)
- 返回表格测试:在J6-J10任意单元格输入数值,I6会自动生成对应公式;清空J列单元格时,I6内容同步清除
内容的提问来源于stack exchange,提问作者scjwolin57
相关产品推荐
相关产品推荐

