Google apps script 为下拉列的特定值发送自动电子邮件

Google apps script 为下拉列的特定值发送自动电子邮件,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我尝试了许多不同的代码来发送电子邮件警报,当我的谷歌工作表中的F列的值为“是”时。我正在从下拉列表中选择此值。但是没有发送电子邮件。我也尝试过不同的电子邮件。什么都不管用。这就是我现在正在尝试的代码 function Email(e) { var ss = SpreadsheetApp.getActiveSpreadsheet(); var s = ss.getSheetByName("FY"); var row = s.getActiveRange().getRow();

我尝试了许多不同的代码来发送电子邮件警报,当我的谷歌工作表中的F列的值为“是”时。我正在从下拉列表中选择此值。但是没有发送电子邮件。我也尝试过不同的电子邮件。什么都不管用。这就是我现在正在尝试的代码

function Email(e) {   
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var s = ss.getSheetByName("FY");
  var row = s.getActiveRange().getRow();
  var status = s.getRange(row,6).getValue();
  var subject = 'subject';   var message = 'body';
  var email ="";
  if (e.value === "Yes" && e.range.getColumn() === 6) {
   GmailApp.sendEmail(email,subject,message); 
  }   
};

您需要使用已安装的触发器才能在编辑脚本上使用此触发器

转到“编辑”->“当前项目的触发器”并设置触发器,如下所示

代码:


谢谢你的输入,詹姆斯!但即使在设置触发器并更改上述代码后,它也不会发送任何电子邮件。我认为它根本不发送任何电子邮件。错误是“无法读取未定义的属性”范围。(第2行,文件“代码”)“是否使用脚本编辑器中的运行或调试器按钮测试代码??使用OneEdit(e)触发器时,参数e仅在编辑电子表格时接收信息,因此测试脚本的唯一方法是在工作表中键入/删除某些内容。我通过编辑电子表格进行了测试。但是当我这么做的时候什么都没发生。你能和我分享一下你的床单吗?jamesd在nairongschool.com嘿,james,经过一些编辑后,它成功了。下面是代码,函数onEdit(event){var sheet=event.source.getActiveSheet();var editedCell=sheet.getActiveCell();var columnToCheck=6;if(editedCell.getColumn()==columnToCheck&&editedCell.getValue().toUpperCase().trim()=“YES”){var subject=“subject line”;var body=“msg body”;var email=”“MailApp.sendmail(电子邮件、主题、正文);Browser.msgBox(“已发送”);}
function onEdit(e){
   var getRange = e.range;
   var getValue = getRange.getValue();
   var getCol = getRange.getColumn();

    if(getValue == "Yes" && getCol == 6){
       var subject = 'subject';
       var message = 'body';
       var email = "---------------";
    MailApp.sendEmail(email, subject, message);
  }
 }