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

如何通过Google Apps Script实现Google Sheets B列编辑时发邮件至对应行D列邮箱

实现Google Sheets编辑B列时自动发送邮件到对应行D列邮箱

步骤1:打开Google Apps Script编辑器

打开目标Google Sheets表格,点击顶部菜单栏的「扩展程序」>「Apps Script」,进入脚本编辑界面。

步骤2:编写核心代码

清空编辑器默认代码,粘贴以下脚本:

function onEdit(e) {
  // 仅响应B列(列索引为2)的编辑操作
  if (e.range.getColumn() !== 2) return;
  
  const activeSheet = e.source.getActiveSheet();
  const editedRow = e.range.getRow();
  
  // 获取当前行D列(列索引为4)的收件人邮箱
  const recipientEmail = activeSheet.getRange(editedRow, 4).getValue();
  
  // 校验邮箱是否为空
  if (!recipientEmail) {
    SpreadsheetApp.getUi().alert(`第${editedRow}行D列未填写邮箱,无法发送邮件`);
    return;
  }
  
  // 自定义邮件主题和内容
  const emailSubject = "表格B列内容已更新";
  const emailBody = `通知:表格第${editedRow}行的B列内容已被编辑,新内容为:${e.value}`;
  
  try {
    // 发送邮件
    MailApp.sendEmail(recipientEmail, emailSubject, emailBody);
    SpreadsheetApp.getUi().alert(`邮件已成功发送至:${recipientEmail}`);
  } catch (err) {
    SpreadsheetApp.getUi().alert(`邮件发送失败:${err.message}`);
  }
}

步骤3:完成权限授权

第一次运行脚本需授权:

  1. 点击脚本编辑器顶部「运行」按钮,选择onEdit函数。
  2. 登录Google账号后,在授权页面点击「高级」>「转到[你的脚本名称]」,允许脚本访问表格数据和发送邮件的权限。

步骤4:测试功能

返回Google Sheets表格,编辑任意一行的B列单元格,系统会自动读取对应行D列的邮箱并发送邮件,同时弹出提示框告知发送结果。

注意事项

  • onEdit是简单触发器,无需手动设置触发条件,但有30秒执行时间限制;若需处理复杂逻辑,建议改用「可安装触发器」(在脚本编辑器「触发器」面板创建,选择「编辑时」触发)。
  • 确保D列邮箱格式正确,否则会触发发送失败提示。
  • Google Apps Script有邮件发送配额限制,普通账户每天最多发送100封邮件,超出配额会暂时无法发送。

内容的提问来源于stack exchange,提问作者Revan Mardagh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 23:05:19