Googleフォームで会議の出欠を取ってみた

会議のとりまとめ、出欠の確認や会場の予約などいわゆる雑用なんですが、これらをメールでやり取りしていました。いまはメンバーが30名近くおり、一人一人の返答メールを確認しながら出欠表に転記しています。この作業がなかなか大変でもっと楽な方法を探していたところ、Googleフォームに出会いフォームで返答をもらうことにしてみました。

いまのところいい感じで運用できているので、備忘録として設定などをメモしておきます。

Google Form

まずはフォームの設定。回答して欲しい内容は、名前、メールアドレス、出欠の三つ。名前とメールアドレスは入力してもらうので、フォームのタイプは「記述式」で、出欠は出席・欠席の二択なので「ラジオボタン」としました。名前には姓と名にスペースを入れないように、メールアドレスは正確に入力してもらうために、それぞれ「回答の検証」にチェックを入れています。

Google Form

回答がスプレッドシートにひとまとめに集計されるので、集計がかなり楽になりました。これで目的が達成できたのですが、ここからは遊びで回答していただいた人に自動で回答内容が返信するようにしました。

参考にしたサイトはこちら。

» ASCII.jp:Googleフォームで自動返信システムをサクッとつくる (1/4)|Web制作をちょっと便利にするGoogle Apps Script入門

フォームから返答があったときにGoogle Apps Scriptを利用して返事を送ります。

Google Form

紹介されていたコードではGmailのアドレスから返信されるようになっていました。そうではなく別のメールアドレスで送信したかったので、上記のサイトで紹介されていたGoogle Apps Scriptのコードを少し変更しました。コードの変更だけでなく、Google Apps ScriptからGmail以外のアドレスで送信するためには、Gmailでエイリアスの設定が必要です。

» [Google Apps Script]別のアドレスからメールを送信する。 | 初心者備忘録

function submitForm(e){
  var itemResponses = e.response.getItemResponses();
  var message = '';
  var username = '';
  var mail = '';
  for (var i = 0; i < itemResponses.length; i++) {
    var itemResponse = itemResponses[i];
    var question = itemResponse.getItem().getTitle();
    var answer = itemResponse.getResponse();
    if (question == 'お名前'){
      username = answer;
    }
    if (question == 'メールアドレス'){
      mail = answer;
    }
    message += question + ':' + answer + '\n';
  }
  var title = '出欠のお返事ありがとうございました';
  var content = username + '様\n\nいつもお世話になっております。\n'
    + '出欠のお返事ありがとうございました。\n\n'
    + '以下の内容で承りました。\n\n'
    + message + '\n'
    + '※このメールはフォームでお返事いただいた方に自動送信されます。\n\n'
    + '・・・・・・・・・・・・・・・・・・・・・・・・・・・\n'
    + '※差出人のメールフッター\n'
  GmailApp.sendEmail(mail, title, content,{
  from: "Gmail以外のアドレス"
});
}

ネットで調べもしましたが、この本も役に立ちました。少し古い本ですけれども。

スポンサーリンク

フォローする

スポンサーリンク