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

求助:基于Google Sheets指定标签页状态触发自动发送邮件

实现Google Sheets下拉选择自动发送邮件的脚本方案

Google Sheets的公式确实没法直接触发邮件发送,得用Google Apps Script来实现。下面是适配你需求的完整方案:

步骤1:打开脚本编辑器

打开你的表格,点击顶部菜单栏的「扩展」→「Apps Script」,进入脚本编辑界面。

步骤2:替换脚本内容

删除默认的myFunction,粘贴下面的代码(注意替换代码里的订单表单链接和主管联系方式):

function onEdit(e) {
  // 限定触发的标签页
  const targetSheets = ['Anchor', 'Book Club', 'Classroom Library'];
  const sheet = e.source.getActiveSheet();
  
  // 检查是否在目标标签页,且修改的是第1列(A列)
  if (!targetSheets.includes(sheet.getName()) || e.range.getColumn() !== 1) return;
  
  const status = e.value;
  const row = e.range.getRow();
  // 获取C列的邮箱地址
  const recipient = sheet.getRange(row, 3).getValue();
  
  // 跳过表头(如果第1行是表头的话,可根据实际调整)
  if (row === 1) return;
  // 检查邮箱是否有效,且状态是指定值
  if (!recipient || !['Approved', 'Not Approved'].includes(status)) return;
  
  let subject, body;
  
  if (status === 'Approved') {
    subject = '你的请求已通过';
    // 替换成你的Google Docs订单表单实际链接
    const formLink = 'https://docs.google.com/forms/d/XXX/edit';
    body = `
    您好,
    
    你的请求已被标记为「Approved」。请点击下方链接填写订单表单:
    ${formLink}
    
    如有疑问,请随时联系我们。
    `;
  } else {
    subject = '你的请求未通过';
    // 替换成实际的学生改进主管联系方式
    const supervisorContact = 'XXX(邮箱:xxx@xx.com / 电话:XXX)';
    body = `
    您好,
    
    你的请求已被标记为「Not Approved」。请联系学生改进主管 ${supervisorContact} 了解改进方向。
    
    如有疑问,请随时联系我们。
    `;
  }
  
  // 发送邮件
  GmailApp.sendEmail(recipient, subject, body);
}

步骤3:设置触发机制

  1. 在脚本编辑器界面,点击左侧的「触发器」图标(时钟形状)。
  2. 点击「添加触发器」:
    • 选择函数:onEdit
    • 选择部署类型:「从电子表格」
    • 选择事件类型:「编辑时」
    • 点击「保存」,按照提示完成授权(首次运行需要授权脚本访问邮箱和表格)。

步骤4:测试功能

回到表格,在目标标签页的A列下拉选择「Approved」或「Not Approved」,对应行C列的邮箱就会收到自动发送的邮件。

注意事项

  • 确保C列的邮箱地址格式正确,否则邮件会发送失败。
  • 脚本首次运行需要授权,授权过程中如果提示「此应用未验证」,点击「高级」→「转到XX脚本(不安全)」完成授权(这是Google对自定义脚本的常规提示,你的脚本是自己编写的,安全可控)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 14:15:04