Google App脚本 - 通过Google表格发送电子邮件,我收到错误无法发送电子邮件:没有收件人

时间:2017-08-24 03:42:46

标签: javascript google-apps

我编写了一个Google App脚本来发送效果摘要电子邮件。但是,即使脚本确实发送了电子邮件,我收到错误无法发送电子邮件:没有收件人。

根据我发现搜索此站点,这是因为getLastRow()部分。我确实需要这个脚本是动态的,因为行数可能经常变化。

我的电子表格在第1行上有一个按钮,用于激活单击时运行的脚本。

第2行是我的标题。

第3行是数据开始的地方。

非常感谢任何帮助

function SummaryEmail() {
var sheet = SpreadsheetApp.getActiveSheet();
var lastRow = sheet.getLastRow();
var range = sheet.getRange(3, 1, lastRow-1,21);
Logger.log(range.getA1Notation());
var UserData = range.getValues();
for (i in UserData) {
var row = UserData[i];
var period = row[0];
var username = row[1]
var total = row[2]
var goal = row[3]
var uniqutotal = row[4]
var uniqueratio = row[5]
var days = row[6]
var avgperday = row[7]
var totalhours = row[8]
var avgperhour = row[9]
var wheel = row[10]
var market = row[11]
var type = row[12]
var email = row[13]
var email2 = row[14]
var email3 = row[15]
var manager = row[16]
var assignments = row[17]
var conversions = row[18]
var offers = row[19]
var percent = row[20]
MailApp.sendEmail(row[13], "Status Report for " + period + "", "Message")
}
}

1 个答案:

答案 0 :(得分:0)

解决方案最终非常简单。事实证明我的范围不正确,需要更改。

的行上
var range = sheet.getRange(3, 1, lastRow-1,21);

需要更改为

var range = sheet.getRange(3, 1, lastRow-2,21);

希望这有助于任何遇到同样问题的人。谢谢!