谷歌表格发送电子邮件两次



我创建了一个谷歌应用脚本,可以根据特定条件自动发送电子邮件。它可以工作,但有一个我无法弄清楚的主要错误。

错误是它会同时发送两封电子邮件,第一封电子邮件是正确的,包含我需要的所有信息,第二封将包含相同的标题但没有值。

我只想知道为什么它会发送第二封电子邮件。

function onEdit(e) {
var spreadSheetName = SpreadsheetApp.getActiveSpreadsheet().getSheetName();
if(spreadSheetName === "KOSU"){
var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("KOSU");
var localTime = ss.getRange("A1").getValue();
var actualKosu = ss.getRange("B30:T30").getValues()[0];
var predictedKosu = ss.getRange("B25:T25").getValues()[0];
var hourlyProduced = ss.getRange("B29:T29").getValues()[0];
var timeRange = ss.getRange("B19:T19").getValues()[0];
//loop through range of times and compare values
//grab actual kosu, predicted kosu, hourly produced then email to relevant people
for(var i = 0; i < timeRange.length; i++){
if(localTime >= timeRange[i] && localTime < timeRange[i + 1]){
MailApp.sendEmail({
to: 'person@gmail.com',
subject: "KOSU UPDATE",
htmlBody: 
'<div>' +
'<h3>SWI1 - KOSU UPDATE</h3>' +
'</div>' +
'<div>' +
'<h3>PREDICTED KOSU:'+ Math.round(predictedKosu[i]) + '</h3>' +
'<h3>ACHIEVED KOSU:'+ Math.round(actualKosu[i]) + '</h3>' +
'<h3>HOURLY OUTPUT:'+ Math.round(hourlyProduced[i]) + '</h3>' +
'</div>'
});
}
}
}
}

感谢您的所有建议和帮助。

事实证明,我设法将其链接到工作表的备份版本,因此它从空白工作表和预期的工作表中发送信息。

最新更新