求助:编写Google Sheets On Form Submit邮件发送脚本
Google Sheets 表单提交自动发送邮件脚本
以下是实现需求的完整脚本,可直接在Google Apps脚本中使用:
function onFormSubmit(e) { // 获取表单提交的行数据(数组索引从0开始) const rowData = e.values; // 提取指定列的数据(根据表格列位置调整索引) const colC = rowData[2]; // C列 const colD = rowData[3]; // D列 const colE = rowData[4]; // E列 const colI = rowData[8]; // I列 const colAU = rowData[46]; // AU列(A是索引0,AU为第47列,对应索引46) // 申请人邮箱:假设邮箱在B列(索引1),请根据实际列位置修改 const recipientEmail = rowData[1]; // 邮件主题 const subject = "您的表单提交已收到"; // 邮件内容(可自定义格式) const body = ` 您好,感谢您提交表单!以下是您提交的关键信息: --- C列内容:${colC} D列内容:${colD} E列内容:${colE} I列内容:${colI} AU列内容:${colAU} --- 如有疑问请随时联系我们。 `; // 发送邮件 MailApp.sendEmail(recipientEmail, subject, body); }
配置步骤:
- 打开关联表单的Google表格,点击「扩展程序」→「Apps脚本」进入编辑器
- 删除默认代码,粘贴上述脚本
- 确认收件人邮箱所在列的索引(比如如果邮箱在A列就改成
rowData[0]),调整后保存脚本 - 创建触发器:点击编辑器左侧的「触发器」图标 → 「添加触发器」
- 选择函数:
onFormSubmit - 选择事件源:「从电子表格」
- 选择事件类型:「表单提交」
- 保存并完成授权(首次运行需允许脚本访问邮件和表格权限)
- 选择函数:
注意事项:
- 列索引从0开始,A列对应0、B列对应1,以此类推,若表格列位置变动需同步修改索引
- 可根据需求调整邮件主题和内容的格式,比如添加HTML格式(使用
sendEmail的HTML参数) - 确保Google账号有邮件发送权限,避免触发发送限制
内容的提问来源于stack exchange,提问作者stekris
相关产品推荐
相关产品推荐

