![Googleフォームの問い合わせ内容を、メールで直接受け取るカスタマイズ](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKLf433tVwRRcNvM4kMBd9s7hqAae8jJMiNmK0LW2dUIr2tOYT1oZ96Eka-2EK6XT_2YQgPAxuQ6zN-6mkMVe7-hspWzSY6z6nXHW9QD-w1P5Qk_9uM7_xn1IDBP4TT6lpv0PGUTS_Wp-x/s0-e365-rw/eyecatch-form-mail-2.png)
Googleフォームの問い合わせ内容を、メールで直接受け取るカスタマイズ
![Googleフォームの問い合わせ内容を、メールで直接受け取るカスタマイズ](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKLf433tVwRRcNvM4kMBd9s7hqAae8jJMiNmK0LW2dUIr2tOYT1oZ96Eka-2EK6XT_2YQgPAxuQ6zN-6mkMVe7-hspWzSY6z6nXHW9QD-w1P5Qk_9uM7_xn1IDBP4TT6lpv0PGUTS_Wp-x/s0-e365-rw/eyecatch-form-mail-2.png)
当ブログでは、お問い合わせフォームとして Google フォームを利用しています。
Google フォームはデザインのカスタマイズや完了ページの設置ができて便利なのですが、フォームの回答(問い合わせ内容)はフォーム画面やスプレッドシートに移動しないと確認できない点が不便でした。
が、調べたところ、回答内容をメールアドレスに直接送信するカスタマイズが簡単にできたので、この記事でも手順を紹介したいと思います。
Google Apps Script(GAS)を利用する方法です。
目次
Googleフォームのスクリプトエディタに記述
まず、Google フォームを開き、画面右上の三点マークから「スクリプトエディタ」を開きます。
![スクリプトエディタ](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgePbdJ0Z8r5BJIQ01rcIJXdJssYGCrO8T20U8SPYFEiNtPfTROWt98-fFURT1v-7ierBaH56OXWRe8AkMxWQgla_6YQ6vyaxZ3ajNlFb_OYbQ2CoVu_T_S9xy0kBmi34hLvQSqYEFRB5xc/s0-e365-rw/form-mail-2.png)
スクリプトエディタに以下のスクリプトを書き込み、mail@address
の部分を自分のメールアドレスに修正します。
function submitForm(e){
var itemResponses = e.response.getItemResponses();
var message = '';
for (var i = 0; i < itemResponses.length; i++) {
var itemResponse = itemResponses[i];
var question = itemResponse.getItem().getTitle();
var answer = itemResponse.getResponse();
message += (i + 1).toString() + '. ' + question + ': ' + answer + '\n';
}
var address = 'mail@address';
var title = '【お問い合わせを受信しました】';
var content = '以下の内容で、お問い合わせを受信しました。\n\n' + message;
GmailApp.sendEmail(address, title, content);
}
※追記:
メールの件名に、お問い合わせ送信者の名前を入れるバージョンも作成しました。
function submitForm(e){
var itemResponses = e.response.getItemResponses();
var message = '';
for (var i = 0; i < itemResponses.length; i++) {
var itemResponse = itemResponses[i];
var question = itemResponse.getItem().getTitle();
var answer = itemResponse.getResponse();
if (question == 'お名前') var userName = answer;
message += (i + 1).toString() + '. ' + question + ': ' + answer + '\n';
}
var address = 'mail@address';
var title = userName + 'さんからのお問い合わせを受信しました';
var content = '以下の内容で、お問い合わせを受信しました。\n\n' + message;
GmailApp.sendEmail(address, title, content);
}
文言や改行の有無などは、お好みで適宜修正ください。
上記スクリプトは、以下サイトにて紹介されているものを参考にさせていただきました。
意外とカンタン!Googleフォームの回答をメールアドレスに送る方法まとめ | ajike switch
プロジェクト名は「お問い合わせフォーム」等と入力して、保存しておきます。
![スクリプトを入力](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZSh1xotlGVRS0q1Zs5gr9mSP2nnxiD0bAt2hbUmUkMxqVOrmmiZ-v5aw5RLIBvAEDdvsLAAOy7byftNNCi7FvlQP9J6oKk7j7vruD3vZseNw318kaVerYRVhg2aH3EgAedQ5abw0Ed5eB/s0-e365-rw/form-mail-3.png)
トリガーの設定
画面左側の時計マークから「トリガー」を選択し、「トリガーを追加」をクリックします。
![トリガーを追加](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfV8VwuKgDY9N5wyqTWi8S6IghpYo6mlea5uOvTweSfEtzWlhZKxsgwjjBbAb5PGxZIxAB09mwdMpySObMrMRlm9w5RMov5DJG87uzR2incV_IDCpTmrLi0JBFfmuT3diSBdq6o6IinOLx/s0-e365-rw/form-mail-4.png)
以下のように各項目を設定し、保存します。
![項目設定](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGDzZ01kIznRxGjqccdjXW5AvK7qz8Y_rWOa0hOmgYrFIDZg-IbLZC7UCIXMPbz5QD5SLFX5QCeGnr60BSdAIlw_2pVc66X8mku4G11scWUE4z5CmjmdGZS4abXI8lYq_G0DxQqIPSdvgE/s0-e365-rw/form-mail-5.png)
- 実行する関数を選択:submitForm
- デプロイ時に実行:Head
- イベントのソースを選択:フォームから
- イベントの種類を選択:フォーム送信時
保存後、認証ポップアップが出るので、認証を進めてください。
テスト送信でメールが届くか確認
フォームにテスト送信をして、指定したメールアドレスにきちんとメールが届くかどうか確認してください。
![問い合わせ内容が届いたメール](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3Z60EJr7eReOoJRTqdMiWvv0juqpHDhVuhuOzI39-rtkiDhrQGvQDmrZerXmXDarEST3TaMwcZQqeM69oNZugUDjBHw_0ZiEYuLWWhwtm4zyILZSOtB-5Ito8zRLMYlnQRjjOWWrfFcr-/s0-e365-rw/form-mail-1.png)
正しく届いていれば、完了です!
Google フォームのデザイン・完了ページをカスタマイズ
先日、当ブログのお問い合わせフォームを Google フォームに変更しました。フォームデザインと完了画面(サンクスページ)のカスタマイズ方法を紹介します。