2016-11-11 2 views
0

일부 스크립트를 발견하여 사용 사례에 따라 작동하지만 오류가 계속 발생하도록 수정하려고 시도했습니다. 기본적으로 Google 양식이 있으며 사용자가 제출할 때 방금 입력 한 행이 내 이메일로 전송되기를 원합니다. 계속 오류가 있습니다. "정의되지 않은"namedValues ​​"속성을 읽을 수 없습니다 (줄 14, 파일"코드 ")."Google 시트의 값을 전자 메일로 전송하는 스크립트

감사합니다.

function sendFormByEmail(e) 
{  
    var email = "[email protected]"; 

    var s = SpreadsheetApp.getActiveSheet(); 
    var headers = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];  
    var message = ""; 
    var subject = "New Hire: "; 

    // The variable e holds all the form values in an array. 
    // Loop through the array and append values to the body. 

    for(var i in headers) 
    message += headers[i] + ': '+ e.namedValues[headers[i]].toString() + "\n\n";  

    // Insert variables from the spreadsheet into the subject. 
    subject += e.namedValues[headers[2]].toString() + " - starts " + e.namedValues[headers[15]].toString(); 

    // Send the email 
    MailApp.sendEmail(email, subject, message); 

} 
+0

실제로 내가 아래의 코드를 사용하여 이걸 가지고 있는데, 어떻게 값을 가진 헤더 만 포함하도록 수정합니까? 그래서 그것의 공백은, 메시지에서 그것을 포함하지 않는다. ; VAR의 = SpreadsheetApp.openById ("임의") " VAR 시트 = – Tai

+0

기능 sendFormByEmail (예) { VAR 이메일 ="[email protected] "지금의 모든 헤더 값없이도 포함한var header = sheet.getRange (1, 1, sheet.getLastColumn()). getValues ​​() [0]; var datarow = sheet.getRange (sheet.getLastRow() 1,1-, sheet.getLastColumn())에 getValues ​​() [0]. VAR 메시지 = ""; 헤더 VAR (I)에 대한 { 메시지 + = ""헤더 + [I] + " : "+ datarow [i] +"\ n \ n " //Logger.log(message); } MailApp.sendEmail (email, "Report", message); } – Tai

답변

0

헤더 [I] 비어있는 경우 당신은 확인할 수 있습니다 대체 :

message += "" + headers[i] + " : " + datarow[i] + "\n\n"; 

로 : 또한

if (datarow[i] != "") { 
message += "" + headers[i] + " : " + datarow[i] + "\n\n"; 
} 

당신이 다음 데이터 행을 자신의 응답을 편집 할 사용자를 허용하는 경우 잘못된 것입니다. 당신은 사용할 수 있습니다 :

var datarow = sheet.getRange(e.range.getRow(),1,1,sheet.getLastColumn())‌.getValues()[0]; 
+0

안녕하세요, 저는 이것을 시도했지만 가치가없는 일부 헤더가 포함 된 이메일을 받고 있습니다. 아래 내 이메일의 샘플 데이터를 참조하십시오. – Tai

+0

자세한 설명 : : 예 카테고리를 선택하십시오. : URL : : – Tai

+0

데이터는 어디에 있습니까? 스프레드 시트에 공유 링크를 게시 할 수 있습니까? – utphx

관련 문제