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

如何用Google Apps Script实现Google Sheet状态变更时自动发送带加粗内容的邮件

嘿,我帮你搞定这个Google Sheets状态变更自动发邮件的需求,下面是完整的步骤和代码:

实现Google Sheets状态变更自动发邮件的方案

1. 创建并编写Google Apps Script

首先打开你的Google表格,点击顶部菜单栏的「扩展程序」→「Apps Script」,把默认的代码替换成下面的脚本:

function sendStatusUpdateEmail(e) {
  // 获取触发编辑的单元格范围
  const editRange = e.range;
  const targetSheet = editRange.getSheet();

  // 仅处理D列(第4列)的非表头行变更
  if (editRange.getColumn() !== 4 || editRange.getRow() === 1) {
    return;
  }

  const newStatus = editRange.getValue();
  // 如果状态被清空,不发送邮件
  if (!newStatus) return;

  // 提取当前行的姓名、邮箱和标识符
  const userName = targetSheet.getRange(editRange.getRow(), 1).getValue();
  const userEmail = targetSheet.getRange(editRange.getRow(), 2).getValue();
  const userIdentifier = targetSheet.getRange(editRange.getRow(), 3).getValue();

  // 替换成你要指定的发件人邮箱(必须是当前Google账号有权使用的邮箱)
  const senderEmail = "your-sender-email@example.com";

  // 邮件主题
  const emailSubject = `状态更新通知:你的标识符 ${userIdentifier} 已变更`;

  // 邮件正文(用HTML标签<strong>来加粗特定单词,按需修改)
  const emailBody = `
    <p>亲爱的 ${userName}:</p>
    <p>你的 <strong>标识符</strong> ${userIdentifier} 的 <strong>状态</strong> 已更新为:<strong>${newStatus}</strong></p>
    <p>如有任何疑问,请随时联系我们。</p>
  `;

  // 发送邮件,启用HTML格式并指定发件人
  MailApp.sendEmail({
    to: userEmail,
    subject: emailSubject,
    htmlBody: emailBody,
    from: senderEmail
  });

  // 可选:弹出提示框确认邮件已发送
  SpreadsheetApp.getUi().alert(`已向 ${userEmail} 发送状态更新邮件!`);
}

代码关键点说明

  • 触发范围判断:只对D列(第4列)的非表头行生效,避免误触发
  • 发件人设置:senderEmail要替换成你实际要用的发件邮箱,必须是当前Google账号拥有权限的邮箱(比如账号本身、别名,或者G Suite组织内的授权邮箱)
  • 正文加粗:用HTML的<strong>标签包裹需要加粗的单词,MailApp会自动渲染为加粗样式
  • 空值判断:如果D列被清空,不会发送邮件,避免无效触发

2. 设置可安装触发器

因为简单的onEdit触发没有发送邮件的权限,所以需要设置可安装触发器:

  • 在Apps Script编辑器左侧,点击「触发器」图标(闹钟样式)
  • 点击「添加触发器」,按以下配置设置:
    • 选择函数:sendStatusUpdateEmail
    • 部署类型:「从电子表格」
    • 事件源:「编辑时」
    • 事件类型:「当更改时」
    • 失败通知:按需选择(比如选「立即通知我」方便排查问题)
  • 保存后会弹出权限验证窗口,按照提示完成授权即可

3. 测试验证

回到你的Google表格,在任意一行的D列选择A/B/C状态,等待几秒后:

  • 表格会弹出提示框确认邮件已发送(如果保留了alert代码)
  • 对应行的B列邮箱会收到带有加粗内容的邮件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:58:12