繁体   English   中英

Google 表格脚本 - 将 email 添加到 Google 表格时自动发送带有值的值

[英]Google Sheet script - Automatically send an email with values when they are added to a Google Sheet

我一直在尝试遵循下面的文档,但有点卡住了。 简而言之,当将两个值添加到 Google 表格(姓名、电话)时,我试图让 Google 表格自动发送 email

下面的 function 在我从 App 脚本运行时效果很好,但我正在寻找它来获取当时插入的值并自动发送 email 而不必每次都在 App Script 中运行脚本。

// Fetch the email address
var emailRange = 
SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1").getRange("B2");
var emailAddress = emailRange.getValue();
// Send Alert Email.
var message = 'This is your Alert email!'; // Second column
var subject = 'Your Google Spreadsheet Alert';
MailApp.sendEmail(emailAddress, subject, message);

https://www.groovypost.com/howto/google-sheets-send-email-based-on-cell-value/

您需要使用 onEdit 功能。 https://developers.google.com/apps-script/guides/triggers/events

function onEdit(e){
  sendEmailToUpdatedValue(e)
}
function sendEmailToUpdatedValue(e){
  let email_x = /\b[\w\.\-\+]+@[\w\-]+\.[a-zA-Z]{2,13}(\.[a-zA-Z]{2,13}|\b)/;
  let email = e.range.getValue();
  let is_email = email_x.test(email);
  if(is_email){
    //your email function here
  }
}

请务必在 Apps 脚本中运行一次 onEdit function 以确保设置触发器。 第一次会出错。

请记住,onEdit 仅从用户操作触发,因此如果电子邮件是从表单或其他脚本添加的,这将不起作用。 在这些情况下,您将需要基于时间的触发器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM