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

如何从Google表格联系人列表批量生成Gmail草稿?

从Google表格批量生成Gmail草稿的实现方案

当然可以!其实这个需求很容易实现——你只需要把之前用MailApp.sendEmail()直接发送邮件的逻辑,替换成Gmail服务里创建草稿的方法就行。我给你一步步拆解,附上手写的代码示例:

1. 准备工作:打开脚本编辑器

首先打开你的Google表格,点击顶部菜单栏的「扩展」→「Apps脚本」,进入Google Apps Script的编辑器界面。如果你之前已经有发送邮件的脚本,直接在原有代码上修改就行。

2. 核心代码示例

假设你的表格结构是:

  • A列:收件人邮箱
  • B列:邮件主题
  • C列:邮件内容(支持纯文本或HTML)
  • D列:可选的Google云端硬盘附件链接

下面是完整的批量生成草稿的代码,注释已经写得很清楚:

function createGmailDraftsFromSheet() {
  // 获取当前表格的活动工作表
  const activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  // 读取表格数据,跳过第一行的表头
  const sheetData = activeSheet.getDataRange().getValues().slice(1);
  
  // 遍历每一行数据,创建对应草稿
  sheetData.forEach((row, index) => {
    const recipient = row[0];
    const emailSubject = row[1];
    const emailContent = row[2];
    const attachmentUrl = row[3];
    
    // 处理附件(如果有)
    let draftAttachments = [];
    if (attachmentUrl && attachmentUrl.includes('drive.google.com')) {
      // 从Google Drive链接中提取文件ID
      const fileId = attachmentUrl.split('/d/')[1].split('/')[0];
      try {
        const targetFile = DriveApp.getFileById(fileId);
        draftAttachments.push(targetFile);
      } catch (e) {
        // 附件获取失败时,在表格标记错误
        activeSheet.getRange(index + 2, 5).setValue('附件错误:' + e.message);
        return; // 跳过当前行的草稿创建
      }
    }
    
    try {
      // 创建Gmail草稿,参数和MailApp.sendEmail()几乎一致
      GmailApp.createDraft(
        recipient,
        emailSubject,
        '', // 纯文本内容,留空则优先使用HTML内容
        {
          htmlBody: emailContent, // 如果你的内容是HTML格式,用这个参数
          attachments: draftAttachments,
          // 可选:添加抄送、密送,对应表格E、F列的话可以写成row[4]、row[5]
          // cc: row[4],
          // bcc: row[5]
        }
      );
      // 在表格E列标记创建成功状态
      activeSheet.getRange(index + 2, 5).setValue('草稿已创建');
    } catch (e) {
      // 创建失败时标记错误原因
      activeSheet.getRange(index + 2, 5).setValue('创建失败:' + e.message);
    }
  });
  
  // 全部完成后弹出提示
  SpreadsheetApp.getUi().alert('批量草稿创建任务完成!请前往Gmail草稿箱查看。');
}

3. 关键细节说明

  • 核心方法:GmailApp.createDraft()是实现需求的关键,它的参数和你之前用的MailApp.sendEmail()高度兼容,学习成本很低
  • HTML内容支持:如果你的邮件内容是HTML格式(比如带样式、图片),一定要把内容放在htmlBody参数里,同时把第三个纯文本参数留空
  • 权限授权:第一次运行脚本时,会提示需要授权访问你的Gmail、表格和Drive(如果用附件),这是Google官方的安全流程,直接按照提示完成授权即可
  • 配额限制:Google对Gmail的操作有配额限制(比如每天最多创建5000封草稿),如果你的数据量很大,建议分批次运行脚本,避免触发限制

4. 运行脚本

在脚本编辑器里点击「运行」按钮,等待脚本执行完成,之后就可以打开Gmail的草稿箱,看到批量生成的邮件草稿了,你可以手动编辑或发送每一封。

内容的提问来源于stack exchange,提问作者Víctor Enrich

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 11:47:47