Created
February 18, 2012 11:50
-
-
Save bols-blue/1858973 to your computer and use it in GitHub Desktop.
google_app_sclipt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function sendMailFromForm() { | |
Logger.log('sendMailFromForm() debug start'); | |
//------------------------------------------------------------ | |
// 設定エリアここから | |
//------------------------------------------------------------ | |
// 件名、本文、フッター | |
var subject = "[お問い合わせ]"; | |
var body | |
= "お問い合わせありがとうございます。\n\n" | |
+ "------------------------------------------------------------\n"; | |
var footer | |
= "------------------------------------------------------------\n\n" | |
+ "後ほど担当者よりご連絡させていただきます。"; | |
// 入力カラム名の指定 | |
var NAME_COL_NAME = 'ユーザー名'; | |
var MAIL_COL_NAME = 'ユーザー名'; | |
var SUBJ_COL_NAME = '好きな動物'; | |
// メール送信先 | |
var admin = "[email protected]"; // 管理者(必須) | |
var cc = ""; // Cc: | |
var bcc = ""; // Bcc: | |
var reply = "[email protected]"; // Reply-To: | |
var to = ""; // To: (入力者のアドレスが自動で入ります) | |
//------------------------------------------------------------ | |
// 設定エリアここまで | |
//------------------------------------------------------------ | |
try{ | |
// スプレッドシートの操作 | |
var sh = SpreadsheetApp.getActiveSheet(); | |
var rows = sh.getLastRow(); | |
var cols = sh.getLastColumn(); | |
var rg = sh.getDataRange(); | |
Logger.log("rows="+rows+" cols="+cols); | |
// メール件名・本文作成と送信先メールアドレス取得 | |
for (var j = 1; j <= cols; j++ ) { | |
var col_name = rg.getCell(1, j).getValue(); // カラム名 | |
var col_value = rg.getCell(rows, j).getValue(); // 入力値 | |
body += "【"+col_name+"】\n"; | |
body += col_value + "\n\n"; | |
if ( col_name === NAME_COL_NAME ) { | |
body = col_value+" 様\n\n"+body; | |
} | |
if ( col_name === MAIL_COL_NAME ) { | |
to = col_value; | |
} | |
if ( col_name === SUBJ_COL_NAME ) { | |
subject += col_value; | |
} | |
} | |
body += footer; | |
// 送信先オプション | |
var options = {}; | |
if ( cc ) options.cc = cc; | |
if ( bcc ) options.bcc = bcc; | |
if ( reply ) options.replyTo = reply; | |
// メール送信 | |
if ( to ) { | |
MailApp.sendEmail(to, subject, body, options); | |
}else{ | |
MailApp.sendEmail(admin, "【失敗】Googleフォームにメールアドレスが指定されていません", body); | |
} | |
}catch(e){ | |
MailApp.sendEmail(admin, "【失敗】Googleフォームからメール送信中にエラーが発生", e.message); | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function sendMailFromForm() { | |
Logger.log('sendMailFromForm() debug start'); | |
//------------------------------------------------------------ | |
// 設定エリアここから | |
//------------------------------------------------------------ | |
// 件名、本文、フッター | |
var subject = "[お問い合わせ]"; | |
var body | |
= "お問い合わせありがとうございます。\n\n" | |
+ "------------------------------------------------------------\n"; | |
var footer | |
= "------------------------------------------------------------\n\n" | |
+ "後ほど担当者よりご連絡させていただきます。"; | |
// 入力カラム名の指定 | |
var NAME_COL_NAME = 'ユーザー名'; | |
var MAIL_COL_NAME = 'ユーザー名'; | |
var SUBJ_COL_NAME = '好きな動物'; | |
// メール送信先 | |
var admin = "[email protected]"; // 管理者(必須) | |
var cc = "[email protected]"; // Cc: | |
var bcc = ""; // Bcc: | |
var reply = "[email protected]"; // Reply-To: | |
var to = ""; // To: (入力者のアドレスが自動で入ります) | |
//------------------------------------------------------------ | |
// 設定エリアここまで | |
//------------------------------------------------------------ | |
try{ | |
// スプレッドシートの操作 | |
var sh = SpreadsheetApp.getActiveSheet(); | |
var rows = sh.getLastRow(); | |
var cols = sh.getLastColumn(); | |
var rg = sh.getDataRange(); | |
Logger.log("rows="+rows+" cols="+cols); | |
// メール件名・本文作成と送信先メールアドレス取得 | |
for (var j = 1; j <= cols; j++ ) { | |
var col_name = rg.getCell(1, j).getValue(); // カラム名 | |
var col_value = rg.getCell(rows, j).getValue(); // 入力値 | |
body += "【"+col_name+"】\n"; | |
body += col_value + "\n\n"; | |
if ( col_name === NAME_COL_NAME ) { | |
body = col_value+" 様\n\n"+body; | |
} | |
if ( col_name === MAIL_COL_NAME ) { | |
to = col_value; | |
} | |
if ( col_name === SUBJ_COL_NAME ) { | |
subject += col_value; | |
} | |
} | |
body += footer; | |
var data = ""; | |
for (var j = 1; j <= cols; j++ ) { | |
var col_name = rg.getCell(1, j).getValue(); // カラム名 | |
var col_value = rg.getCell(rows, j).getValue(); // 入力値 | |
data += "\""+col_name+"\","; | |
data += "\""+col_value+"\"\n";; | |
} | |
var attach = {fileName:"data.csv",mimeType:"text/plain",content:data}; | |
// 送信先オプション | |
var options = {attachments:[attach]}; | |
if ( cc ) options.cc = cc; | |
if ( bcc ) options.bcc = bcc; | |
if ( reply ) options.replyTo = reply; | |
// メール送信 | |
if ( to ) { | |
MailApp.sendEmail(to, subject, body, options); | |
}else{ | |
MailApp.sendEmail(admin, "【失敗】Googleフォームにメールアドレスが指定されていません", body); | |
} | |
}catch(e){ | |
MailApp.sendEmail(admin, "【失敗】Googleフォームからメール送信中にエラーが発生", e.message); | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function sendMailFromForm() { | |
Logger.log('sendMailFromForm() debug start'); | |
//------------------------------------------------------------ | |
// 設定エリアここから | |
//------------------------------------------------------------ | |
// 件名、本文、フッター | |
var subject = "[お問い合わせ]"; | |
var body | |
= "お問い合わせありがとうございます。\n\n" | |
+ "------------------------------------------------------------\n"; | |
var footer | |
= "------------------------------------------------------------\n\n" | |
+ "後ほど担当者よりご連絡させていただきます。"; | |
// 入力カラム名の指定 | |
var NAME_COL_NAME = 'ユーザー名'; | |
var MAIL_COL_NAME = 'ユーザー名'; | |
var SUBJ_COL_NAME = '好きな動物'; | |
// メール送信先 | |
var admin = "[email protected]"; // 管理者(必須) | |
var cc = "[email protected]"; // Cc: | |
var bcc = ""; // Bcc: | |
var reply = "[email protected]"; // Reply-To: | |
var to = ""; // To: (入力者のアドレスが自動で入ります) | |
//------------------------------------------------------------ | |
// 設定エリアここまで | |
//------------------------------------------------------------ | |
try{ | |
// スプレッドシートの操作 | |
var sh = SpreadsheetApp.getActiveSheet(); | |
var rows = sh.getLastRow(); | |
var cols = sh.getLastColumn(); | |
var rg = sh.getDataRange(); | |
Logger.log("rows="+rows+" cols="+cols); | |
// メール件名・本文作成と送信先メールアドレス取得 | |
for (var j = 1; j <= cols; j++ ) { | |
var col_name = rg.getCell(1, j).getValue(); // カラム名 | |
var col_value = rg.getCell(rows, j).getValue(); // 入力値 | |
body += "【"+col_name+"】\n"; | |
body += col_value + "\n\n"; | |
if ( col_name === NAME_COL_NAME ) { | |
body = col_value+" 様\n\n"+body; | |
} | |
if ( col_name === MAIL_COL_NAME ) { | |
to = col_value; | |
} | |
if ( col_name === SUBJ_COL_NAME ) { | |
subject += col_value; | |
} | |
} | |
body += footer; | |
var data = ""; | |
for (var j = 1; j <= cols; j++ ) { | |
var col_name = rg.getCell(1, j).getValue(); // カラム名 | |
data += "\""+col_name+"\","; | |
} | |
data +="\n"; | |
for (var j = 1; j <= cols; j++ ) { | |
var col_value = rg.getCell(rows, j).getValue(); // 入力値 | |
data += "\""+col_value+"\",";; | |
} | |
data +="\n"; | |
var attach = {fileName:"data.csv",mimeType:"text/plain",content:data}; | |
// 送信先オプション | |
var options = {attachments:[attach]}; | |
if ( cc ) options.cc = cc; | |
if ( bcc ) options.bcc = bcc; | |
if ( reply ) options.replyTo = reply; | |
// メール送信 | |
if ( to ) { | |
MailApp.sendEmail(to, subject, body, options); | |
}else{ | |
MailApp.sendEmail(admin, "【失敗】Googleフォームにメールアドレスが指定されていません", body); | |
} | |
}catch(e){ | |
MailApp.sendEmail(admin, "【失敗】Googleフォームからメール送信中にエラーが発生", e.message); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment