2013-08-05 3 views
0

나는 주간 시간 구동 트리거를 사용하여 Google 스프레드 시트에서 자동 이메일을 전송하는 스크립트를 작성했습니다. 나는 그것을 테스트했고, 내가 "달리다"를 칠 때만 작동하는 것처럼 보인다. 시간 기반 트리거는 '유효하지 않은 이메일 : #VALUE! (줄 14, 파일'코드 ')'오류 메시지를 반환합니다. 내가 어디로 잘못 갔니? 어떤 도움이라도 대단히 감사하겠습니다! 여기sendemail 함수를 사용할 때 오류 메시지가 나타납니다.

는 내가 지금까지 무엇을 가지고 : 시간 기반 트리거 기능으로 실행

function sendEmails() { 
    var sheet = SpreadsheetApp.getActiveSheet(); 
    var startRow = 2; // First row of data to process 
    var numRows = 20; // Number of rows to process 
    // Fetch the range of cells A2:c20 
    var dataRange = sheet.getRange(startRow, 1, numRows, 20) 
    // Fetch values for each row in the Range. 
    var data = dataRange.getValues(); 
    for (i in data) { 
    var row = data[i]; 
    var emailAddress = row[0]; // First column 
    var message = "Project Owner: " + row[3] + '\n' + "Status: " + row[2]; //3rd column 
    var subject = "Project Update: " + row[1];        //2nd column 
    MailApp.sendEmail(emailAddress, subject, message); 
    } 
} 

답변

0

SpreadsheetApp.getActiveSheet()에 대한 활성 스프레드 시트가 없다. 대신 openById().getSheetByName()을 사용하십시오.

for (i in data)을 사용하여 배열을 반복하면이 문제를 일으킬 수 있습니다. 대신 for (var i=0; i<data.length; i++)을 사용하십시오.

관련 문제