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

Google Sheets脚本开发:编辑Col10-Col12时自动发送Col3值邮件

Google Sheets 编辑触发邮件脚本实现

需求说明

  • 当同一行的Col10(第10列)至Col12(第12列)单元格被编辑时,自动发送包含对应Col3值的邮件
  • 附加规则:若Col10已填写内容,编辑Col11或Col12时不触发邮件

完整实现脚本

// 配置项:请替换为你的实际信息
const ADMIN_EMAIL = '你的收件邮箱@example.com';
const EMAIL_SUBJECT = 'Col3值通知';

function onEdit(e) {
  const sheet = e.source.getActiveSheet();
  const editedRange = e.range;
  const row = editedRange.getRow();
  const col = editedRange.getColumn();

  // 跳过表头行(假设表头在第1行,若表头行数不同请修改此值)
  if (row <= 1) return;

  // 仅处理Col10-Col12的编辑操作
  if (col < 10 || col > 12) return;

  // 附加规则:编辑Col11/12时,若Col10已有内容则终止触发
  if ((col === 11 || col === 12)) {
    const col10Value = sheet.getRange(row, 10).getValue();
    if (col10Value !== '') return;
  }

  // 获取对应行的Col3值
  const col3Value = sheet.getRange(row, 3).getValue();
  if (!col3Value) {
    SpreadsheetApp.getUi().alert('Col3为空,无法发送邮件');
    return;
  }

  // 发送邮件
  try {
    MailApp.sendEmail({
      to: ADMIN_EMAIL,
      subject: EMAIL_SUBJECT,
      body: `Col3的值为:${col3Value}`
    });
    SpreadsheetApp.getUi().alert('邮件已成功发送');
  } catch (error) {
    SpreadsheetApp.getUi().alert(`邮件发送失败:${error.message}`);
  }
}

脚本说明

  • 配置项:开头的ADMIN_EMAIL和EMAIL_SUBJECT需替换为你的收件邮箱和自定义邮件主题
  • 触发判断:
    • 自动跳过表头行,避免误触发
    • 仅响应Col10-Col12的编辑操作
    • 严格执行附加规则,防止重复触发
  • 邮件逻辑:仅提取Col3的值作为邮件内容,发送给指定收件人,操作结果会通过弹窗提示

设置步骤

  1. 打开目标Google Sheets文档
  2. 点击顶部菜单栏「扩展程序」→「Apps脚本」
  3. 删除默认代码,粘贴上述脚本
  4. 修改ADMIN_EMAIL为实际收件邮箱
  5. 点击「保存」,为脚本命名(如"EditTriggerEmail")
  6. 创建可安装触发器(因简单触发无法调用邮件服务):
    • 点击左侧「触发器」图标(时钟形状)
    • 点击「添加触发器」
    • 配置选项:
      • 运行函数:onEdit
      • 部署类型:Head
      • 事件源:从电子表格
      • 事件类型:编辑时
    • 点击「保存」,按提示完成权限授权

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 14:25:25