咨询:Google表单提交触发脚本写入Google Sheet的配置方法
实现Google表单提交自动写入Google Sheet的步骤
1. 编写核心处理脚本
打开你的Google表单,点击右上角的三个点 → 选择「脚本编辑器」,在编辑器中粘贴以下代码:
function onFormSubmit(e) { // 获取本次提交的所有问题响应 const itemResponses = e.response.getItemResponses(); const rowData = []; // 逐个提取答案存入数组 itemResponses.forEach(itemResp => { rowData.push(itemResp.getResponse()); }); // 可选:追加提交时间到数据末尾 rowData.push(new Date()); // 替换为你的目标Sheet ID和工作表名称 const targetSheet = SpreadsheetApp.openById("你的Google Sheet ID") .getSheetByName("要写入的工作表名称"); // 将数据写入下一行空白行 targetSheet.appendRow(rowData); }
代码说明:
e是表单提交触发的事件对象,包含本次提交的所有数据itemResponses是本次提交的所有问题响应集合,遍历后提取每个问题的答案openById中的Sheet ID:打开你的目标Google Sheet,地址栏中d/和/edit之间的字符串就是Sheet IDgetSheetByName替换为你实际要写入的工作表名称(比如「联系人列表」)
2. 设置表单提交触发器
脚本编写完成后,配置自动触发规则:
- 在脚本编辑器左侧,点击时钟图标(「触发器」)
- 点击右下角「添加触发器」
- 按以下选项配置:
- 选择函数:
onFormSubmit - 部署类型:
Head(默认选项即可) - 事件源:
从表单 - 事件类型:
当提交时
- 选择函数:
- 点击「保存」,按照提示完成授权(首次授权会有安全提示,点击「高级」→「转到XX脚本(不安全)」即可继续,自定义脚本无需担心安全问题)
3. 测试与排查
- 提交一次测试表单,检查目标Sheet是否自动新增了一行数据
- 如果未生效,打开脚本编辑器的「执行日志」(左侧菜单栏的「执行」),查看具体错误信息,常见问题包括Sheet ID错误、工作表名称不匹配、权限未授予等
内容的提问来源于stack exchange,提问作者user23526181
相关产品推荐
相关产品推荐

