2016-04-08 16 views
-2

の場合、電子メールを送信しないようにします。emailSentCol!== Email_Sentの場合、スクリプトは現在電子メールを送信しないように設定されています。また、emailSentColのセルが空であれば送信しないようにしたいと思います。助言がありますか?皆さん、ありがとうございました。 12行目セル内の "Null"値が

function myFunction() { 
    var EMAIL_SENT = "EMAIL_SENT"; 

    var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Administrators"); 
    if (sheet != null) { 
    var data = sheet.getDataRange().getValues(); 
    var startRow = 1; //The starting row of data (zero indexed) 
    var emailCol = 1; //The column that the email address is in (zero indexed) 
    var messageCol = 28; //The column that the message is in (zero indexed) 
    var emailSentCol = 29; //The column that the EMAIL_SENT note is in (zero indexed) 
    for (var i = startRow; i < data.length; i++) { 
     if (data[i][emailSentCol] !== EMAIL_SENT) { 
     var emailAddress = data[i][emailCol]; 
     var subject = "Tuition Reimbursement Status"; 
     var message = data[i][messageCol]; 
     if(emailAddress !== null && emailAddress !== '' && emailAddress !== "") { 
      MailApp.sendEmail(emailAddress, subject, message); 
      sheet.getRange(i+1,emailSentCol+1).setValue(EMAIL_SENT); 
     } 
     } 
    } 
    } 

答えて

0

改正あなたの次のように構築物を可能にする場合:これは、それはだ場合データ[i]は[emailSentCol]定義する必要があり、null以外の前にあなたのチェックには、見ていることを保証

if (data[i][emailSentCol] && data[i][emailSentCol] !== EMAIL_SENT) { 

送信されません。

+1

ありがとうManoDestraそれは完璧に動作しています! –

関連する問題