googleappscript出错

时间:2018-05-08 05:17:38

标签: google-apps-script google-sheets gas

我正在尝试运行一个应用程序,该脚本会读取电子表格并发送一个在列中设置的电子邮件。但是,我收到以下错误: “在(类)中转换电子邮件是不可能的。(第6行,文件审核)。 怎么了?我的代码是:

function sendEmails() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;  // First row of data to process
  var numRows = sheet.getRange(2, 8).getValue(); //comeca na linha 2, da coluna H
  // Fetch the range of cells A2:B3
  var dataRange = sheet.getRange(startRow, 1, numRows, 8);
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  for (i in data) {
    var row = data[i];
    var emailAddress = row[8];  // First column //começa em 0. Logo, refere-se a coluna J
    var subject = "Você tem um prazo de auditoria vencendo em " + row[11] + " dias";
    var message = row[2]; 
    var expired = row[11]; 

    if (expired < 10); {
      MailApp.sendEmail(emailAddress, subject, message); 
      }
  }
}

2 个答案:

答案 0 :(得分:0)

我想收到“H”栏的电子邮件。我按照你的提示更改了我的代码。就像这样:

var startRow = 2; 
var numRows = sheet.getRange(2, 7).getValue(); 
var dataRange = sheet.getRange(startRow, 1, numRows, 7);

但消息仍然显示:

  

无法将Não转换为(class)。 (第7行,文件“代码”)

我需要在H列中收到电子邮件并发送消息。不是G列。

答案 1 :(得分:0)

通过以下更改解决了问题:

var sheet = SpreadsheetApp.getActiveSheet(); 

var startRow = 1; 
var numRows = sheet.getLastRow(); 
var lastCol = sheet.getLastColumn(); 

var dataRange = sheet.getRange(2, 1, numRows-startRow,lastCol).getValues();