我编写了一个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")
}
}
答案 0 :(得分:0)
解决方案最终非常简单。事实证明我的范围不正确,需要更改。
在
的行上var range = sheet.getRange(3, 1, lastRow-1,21);
需要更改为
var range = sheet.getRange(3, 1, lastRow-2,21);
希望这有助于任何遇到同样问题的人。谢谢!