运行谷歌脚本后,将每一行标记为成功

时间:2016-06-07 11:57:34

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

我编写了一个使用Google工作表发送电子邮件的脚本。除了将第三列标记为成功之外,一切正常。第一个成功的电子邮件标记为EMAIL_SENT,但以下单元格均未更改。任何想法,为什么这不起作用?

for (row = 1; row < emailLength && confirmation == ui.Button.YES; row++){

  var customerEmail = data[row][0]; // Customer's email in first column

  var customerName = data[row][1]; // Customer's name in second column

  var EMAIL_SENT = 'Success';

  if(customerName != ''){

      var body = '<font face="avenir" size="3"> Hi '+ customerName + ',<br><br>' 
      + paragraphOne + '<br><br>'
      + paragraphTwo + '<br><br>'
      + paragraphThree + '<br><br>'
      + signature;
    }


  GmailApp.sendEmail(customerEmail, emailSubject, "", {htmlBody: body});

  sheet.getRange(row, 3).setValue(EMAIL_SENT);
}
};

1 个答案:

答案 0 :(得分:1)

@bardo走在正确的轨道上。问题出在getRange上。使用代码最初的方式,getRange(row,3)从第三列和第一行开始。我希望它从第二行开始。 data [row] [x]很好,因为那些是索引,但getRange必须是getRange(row + 1 , 3)

  sheet.getRange(row + 1, 3).setValue(EMAIL_SENT);