email - 发送电子邮件失败:没有收件人,我的代码有什么问题?
问题描述
我正在运行一个脚本,该脚本应该向输入到特定工作表单元格的电子邮件发送消息。我收到错误无法发送电子邮件:没有收件人
function emai() {
var EMAIL_SENT = 'EMAIL_SENT';
var sheet = SpreadsheetApp.getActive().getSheetByName('Sheet5')
var startRow = 2; // First row of data to process
var numRows = 1000; // Number of rows to process
// Fetch the range of cells A2:B3
var dataRange = sheet.getRange(startRow, 2, numRows, 1000);
// Fetch values for each row in the Range.
var data = dataRange.getValues();
for (var i = 0; i < data.length; ++i) {
var row = data[i];
var emailAddress = row[1]; // First column
var message = "b"
var emailSent = row[26]; // Third column
if (emailSent != EMAIL_SENT) { // Prevents sending duplicates
var subject = 'Sending emails from a Spreadsheet';
MailApp.sendEmail(emailAddress, subject, message);
sheet.getRange(startRow + i, 1000).setValue(EMAIL_SENT);
// Make sure the cell is updated right away in case the script is interrupted
SpreadsheetApp.flush();
}
}
}
解决方案
尝试这个:
function email() {
var EMAIL_SENT='EMAIL_SENT';
var sheet=SpreadsheetApp.getActive().getSheetByName('Sheet5')
var startRow=2;
var numRows=1000;
var dataRange=sheet.getRange(startRow, 2, numRows, sheet.getLastColumn()-1);
var data=dataRange.getValues();
for (var i=0;i<data.length; i++) {
var row=data[i];
var emailAddress = row[1]; // Column 2
var message = "b"
var emailSent = row[26]; // Column 28
if (emailSent != EMAIL_SENT) {
var subject = 'Sending emails from a Spreadsheet';
MailApp.sendEmail(emailAddress, subject, message);
sheet.getRange(i + startRow - 1, 28).setValue(EMAIL_SENT);
}
}
}
如果这不起作用,他们将需要查看您的电子表格的副本,因为您的许多评论没有任何意义。
推荐阅读
- dart - Dart 检查 IP 是否在本地网络 IPv4 或 IPv6 之外
- python - python多重赋值似乎不会一次发生
- sql - SQL 错误 [XX000]: 错误: 已经存在: 该列已经存在 - Yugabyte DB
- c# - 如何通过我的 API 跟踪使用的 JWT
- r - 从用户那里收到列名后,如何通过 R 中的空格取消合并列?
- r - 从向量中删除连续的重复符号
- android - android.database.sqlite.SQLiteException:靠近“编码”:语法错误(代码 1)
- qlikview - QlikView 报表 - 如何将新列/字段添加到现有报表
- postgresql - 使其在postgresql knex中只能有一对两个不同的ID
- ios - 在 swift 中使用正则表达式提取和打印字符串