首页 > 解决方案 > GScript:跟踪使用大量电子邮件 Gscript 代码发送的电子邮件数量

问题描述

我正在尝试修改此 GScript 以计算发送的电子邮件数量。我想跟踪使用此功能发送的电子邮件总数。在此代码中执行此操作或使用代码搜索用户的已发送框会更容易吗?我相信我知道如何使计数值临时存储,但我不确定如何将其存储更长时间。

function WhiteTicket() {
var sheet = SpreadsheetApp.getActive().getSheetByName('Email Outline');
var lastRow = sheet.getRange("J1").getValue();
var range = sheet.getRange("A3:"+ lastRow);
var UserData = range.getValues();
for (i in UserData) {
var row = UserData[i];
var firstname = row[1];
var lastname = row[2]; 
var email = row[3];
var whiteticket = row[6];
if (whiteticket != '0') {
var esubject = "New Tickets";
  MailApp.sendEmail({
  to: row[3],
  subject: esubject,
  htmlBody:"Hello " + firstname + "," + '<br />'+'<br />' + 
    "Please note that you have " + whiteticket + " ticket(s)."});
}
}
    if (ok) {
    EmailComplete();;
  }  
}

标签: google-apps-scriptgoogle-sheets

解决方案


要求:

记录此脚本发送的电子邮件数量。


解决方案:

使用GmailApp.search()并传递给length来计算发送的电子邮件数量。


例子:

var total = GmailApp.search('in:sent subject:"'+esubject+'"').length;
Logger.log(total);

这很容易解释,它会搜索您已发送文件夹中的所有电子邮件,其主题与您分配的主题字符串匹配var esubject。上面的脚本只是使用Logger.log().


推荐阅读