こちらを参考にした。

 

http://creazy.net/2014/12/google_apps_script_form_mailsend_2014.html

var spread_sheet_id = 'xxxxxxxxxxxxxxxxxxxxx'は修正して使う。

/**
* Googleフォーム自動返信スクリプト
*/

/**
* 起点・設定
*/
function sendMailForm() {
Logger.log('sendMailForm() debug start');

//------------------------------------------------------------
// 設定エリアここから
//------------------------------------------------------------

// 件名、本文、フッター
var subject = "【石垣島・八重山エンカウンターズ】送信内容確認";

var body
= "ご記入ありがとうございます。こちらの内容をスマホなどで録音し、facebookのメッセージで添付してお送りください。\n\n"
+ "------------------------------------------------------------\n";

var footer
= "------------------------------------------------------------\n\n"
+ "後ほど担当者よりご連絡させていただきます。";

// 入力カラム名の指定
var NAME_COL_NAME = 'お名前';
var MAIL_COL_NAME = 'メールアドレス';
var SUBJ_COL_NAME = 'ニックネーム';
var SUBJ_COL_NAME = '性別';
var SUBJ_COL_NAME = '誕生年';
var SUBJ_COL_NAME = '職業';
var SUBJ_COL_NAME = '現在の住所';
var SUBJ_COL_NAME = '自己PR';
var SUBJ_COL_NAME = '趣味';
var SUBJ_COL_NAME = 'パートナーに求めるもの';
var SUBJ_COL_NAME = '結婚歴';
var SUBJ_COL_NAME = '身長';

// メール除外カラム
var EXCLUDE_COLS = ['ステータス','対応日時'];

// メール送信先
var admin = "m0607366@gmail.com"; // 管理者(必須、ユーザーメールのReplyTo、および管理者メールのTOになります)

// スプレッドシートID
// URLが「https://docs.google.com/spreadsheets/d/abc1234567/edit#gid=0」だったら「abc1234567」がID
var spread_sheet_id = 'xxxxxxxxxxxxxxxxxxxxx';

//------------------------------------------------------------
// 設定エリアここまで
//------------------------------------------------------------

try{
// スプレッドシートの操作
// シートIDを指定する
var ss = SpreadsheetApp. openById(spread_sheet_id);
var sh = ss.getActiveSheet();
var rows = sh.getLastRow();
var cols = sh.getLastColumn();
var rg = sh.getDataRange();
Logger.log("rows="+rows+" cols="+cols);

// メール件名・本文作成と送信先メールアドレス取得
var to = ""; // To: (入力者のアドレスが自動で入ります)
for ( var j = 1; j <= cols; j++ ) {
var col_name = rg.getCell(1, j).getValue(); // カラム名
var col_value = rg.getCell(rows, j).getValue(); // 入力値

// メール用変換
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;
}
// 日付フォーマットの変換
// 他にも変換したいカラムがある場合はこのif分をコピーしてカラム名・日付フォーマットを変更する
if ( col_name === 'タイムスタンプ' ) {
col_value = Utilities.formatDate(col_value, "JST", "yyyy-MM-dd HH:mm:ss");;
}

// メール送信除外カラム
if ( EXCLUDE_COLS.length > 0 ) {
is_exclude = false;
for ( var k = 0; k < EXCLUDE_COLS.length; k++ ) {
if ( col_name === EXCLUDE_COLS[k] ) {
is_exclude = true;
break;
}
}
if ( is_exclude ) {
// 除外カラムなのでスキップ
continue;
}
}

// メール本文に追加
body += "【"+col_name+"】\n";
body += col_value + "\n\n";
}
body += footer;

/* ユーザー宛送信 */
// 送信先オプション
var options = {};
if ( admin ) options.replyTo = admin;

// メール送信
if ( to ) {
MailApp.sendEmail(to, subject, body, options);
}else{
MailApp.sendEmail(admin, "【失敗】Googleフォームにメールアドレスが指定されていません", body);
}

/* 管理者宛送信 */
// 送信先オプション
var options = {};
if ( to ) options.replyTo = to;

// 連続で送るとエラーになるので1秒スリープ
Utilities.sleep(1000);

MailApp.sendEmail(admin, subject, body, options);

}catch(e){
MailApp.sendEmail(admin, "【失敗】Googleフォームからメール送信中にエラーが発生", e.message);
}
}

この記事が気に入ったら
フォローしよう

最新情報をお届けします

おすすめの記事