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

Google Script - 行数据更新时如何向单元格添加公式?

实现Google Sheet Typeform同步行自动填充公式的方案

提供两种可直接落地的实现方式,按需选择即可:


方案一:Google Apps Script 可安装触发器(适配所有场景,推荐)

该方案适配Typeform所有同步逻辑,不会出现公式错位、性能卡顿问题:

  • 打开你关联Typeform的Google Sheet,点击顶部菜单栏「扩展程序」→「Apps 脚本」进入脚本编辑器
  • 清空默认的空白代码,粘贴以下代码,按注释替换成你自己的工作表名和对应列公式:
function autoFillFormulas(e) {
  // 替换为你的实际工作表名称
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
  const lastRow = sheet.getLastRow();
  // 校验规则:当前行A列有Typeform写入的内容,且K列未填充过公式才执行
  const colAHasValue = sheet.getRange(lastRow, 1).getValue() !== '';
  const colKIsEmpty = sheet.getRange(lastRow, 11).getValue() === '';
  if (colAHasValue && colKIsEmpty) {
    // 以下4个公式替换为你预设的K-N列标准公式,${lastRow}会自动匹配当前新增行的行号
    const kFormula = `=A${lastRow}&B${lastRow}`;
    const lFormula = `=IF(C${lastRow}>10,"达标","未达标")`;
    const mFormula = `=VLOOKUP(D${lastRow},配置页!A:B,2,0)`;
    const nFormula = `=SUM(E${lastRow}:I${lastRow})`;
    // 批量写入K(第11列)到N(第14列)的公式
    sheet.getRange(lastRow, 11, 1, 4).setFormulas([[kFormula, lFormula, mFormula, nFormula]]);
  }
}
  • 保存脚本项目,点击编辑器左侧的闹钟图标「触发器」→「添加触发器」,按以下规则配置:
    • 选择要运行的函数:autoFillFormulas
    • 选择事件来源:电子表格
    • 选择事件类型:更改(如果你的Typeform是绑定Google表单同步的,也可以选「表单提交」,选「更改」适配所有场景)
    • 保存后按页面提示完成脚本访问表格的权限授权
  • 提交一次Typeform测试,新增行的K-N列就会自动填充预设公式

方案二:数组公式预填充(无需代码,适合简单公式场景)

如果你的公式逻辑简单,不想写代码可以用该方案:

  • 点击K列第一个空行(比如K2,即表头下第一行),输入数组公式:=ARRAYFORMULA(IF(A2:A<>"",此处替换为K列的单行公式逻辑,"")),整列K列会自动批量计算
  • 同理L、M、N列也对应输入适配整列的数组公式即可
  • 注意:该方案在公式复杂、数据量超过1000行时会明显拖慢表格运行速度,且如果Typeform插入中间行可能出现公式范围错位

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 22:30:05