Gmail结合Sheets变量起草邮件的方案咨询(需支持草稿预览)
Gmail结合Sheets变量起草邮件的方案咨询(需支持草稿预览)
嘿,我来帮你梳理下可行的方案,刚好我之前也帮不少人解决过类似需求!
一、免费工具方案(无需写代码,支持草稿预览)
推荐Yet Another Mail Merge (YAMM) 的免费版——这是Google Workspace生态里非常热门的邮件合并工具,完全能满足你的需求:
- 操作简单:在Sheets里整理好你的变量数据(比如收件人邮箱、客户姓名、自定义内容等,每列对应一个变量);
- 模板灵活:在Gmail里先写好邮件模板,用
{{变量名}}的格式插入占位符(比如{{姓名}}); - 关键的预览功能:设置完成后,选择「生成草稿」而不是直接发送,它会把所有替换好变量的邮件自动存到Gmail的草稿箱里,你可以逐个打开检查内容、格式,没问题再手动发送;
- 免费额度足够:免费版每月支持生成最多500封草稿,个人日常使用完全够用。
二、自定义脚本方案(高度灵活,完全免费)
如果你的需求比较特殊(比如需要复杂的逻辑判断、批量添加附件、自定义草稿分类等),自己写Google Apps Script会更合适,而且完全免费,还能精准控制每一步:
- 在你的Sheets文档里,点击「扩展程序」>「Apps脚本」,打开脚本编辑器;
- 复制下面的基础示例代码(可以根据你的需求修改变量和内容):
function generateEmailDrafts() { const activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const allData = activeSheet.getDataRange().getValues(); // 跳过第一行表头,从第二行开始遍历数据 for (let rowIndex = 1; rowIndex < allData.length; rowIndex++) { const recipientEmail = allData[rowIndex][0]; // 第一列是收件人邮箱 const userName = allData[rowIndex][1]; // 第二列是用户姓名 const customContent = allData[rowIndex][2]; // 第三列是自定义内容 // 组装邮件主题和正文 const emailSubject = `跟进提醒:${userName}的专属内容`; const emailBody = `Hi ${userName},\n\n${customContent}\n\n如果有任何问题,随时联系我!\n\nBest regards,\n你的名字`; // 创建Gmail草稿 GmailApp.createDraft(recipientEmail, emailSubject, emailBody); } }
- 点击运行按钮,第一次运行需要授权Google权限(按照提示操作即可);
- 运行完成后,打开Gmail的草稿箱,就能看到所有生成好的个性化邮件,逐个检查没问题后再发送。
总结
如果只是基础的变量替换需求,用YAMM免费版最省心,不用写一行代码;如果有特殊定制需求,Google Apps Script是最优解——灵活度拉满,还完全免费,而且全程都是生成草稿让你预览,完美符合你的核心要求。
备注:内容来源于stack exchange,提问作者Sebastian
相关产品推荐
相关产品推荐

