皆さんこんにちは
業務ハックLabのよ~よんです。
普段はMicrosoft関連の記事が多いですが今日はGoogle Apps Script(以下GAS)について書いていきたいと思います。
Goggleでは様々なサービスが無料で使えることも有り、非常に重宝していますがその中でも私がよく使うのはGoogleフォームです。
過去の記事でMicrosoft Formsも取り上げていますがGoogleフォームも、とても使い勝手が良いソリューションになっています。
ただ一つ難点があってデフォルトの機能ではフォームを作成した本人にしか回答通知が飛びません。
そこでGASの登場です。
GASを使うことでデフォルトの設定ではできない複数人へのメール通知や、更にはSlack、Teamsといったコミュニケーションツールに対しても通知を出すことが可能です。
今回はメール通知の方法とSlackへの通知方法を紹介します。
事前準備
まずは事前準備として展開するフォームを作成して下さい。
今回は勉強会受講アンケートとして下記のような質問内容の構成にしています。
質問タイトル | 質問種類 |
貴社名 | 記述式テキスト(短文回答) |
氏名 | 記述式テキスト(短文回答) |
メールアドレス | 記述式テキスト(短文回答) |
今回の勉強会の内容 | ラジオボタン |
具体的な感想 | 記述式テキスト(長文回答) |
GASを用いた複数人へのメール通知
フォームを作成したら次にGASの記述していきます。
- 画面右上の三点リーダーをクリックしスクリプトエディタをクリック
- スクリプトの入力画面になるので下記のコードを入力
- 次にトリガーを設定します。画面左にある時計マークをクリック
- トリガーを追加をクリック
- トリガーの設定画面で下記のように設定
項目 設定 実行する関数を選択 sendFormSubmit 実行するデプロイを選択 Head イベントのソースを選択 フォームから イベントの種類を選択 フォーム送信時 エラー通知設定 今すぐ通知を受け取る
実際にフォームにデータを入力して通知がメールに飛ぶか確認してみましょう!!
では次にSlackへ通知を飛ばす方法です。
GASを用いたSlackへの通知
Slackへの通知はWebhookを利用します。
ではまずSlack側の設定をしましょう。
Slackの設定
通知を受け取るチャンネルの追加とWebhookの設定をします。
- 「チャンネルを追加する」をクリック
- 「新しいチャンネルを作成する」をクリックしチャンネル名を設定
- 必要に応じてメンバーを追加
- 「アプリを連携させる」をクリック
- 検索欄で「Incoming Webhooks」と入力する
- 「App ディレクトリ」から「Incoming Webhooks」をインストール
- 「Slackに追加」をクリック
- 先ほど設定したチャンネルを選択し「Incoming Webhookインテグレーションの追加」をクリック
- Webhook URLに記載があるURLをコピーし、控えておく
これでSlack側の設定は完了!!
GAS側での操作
- 以下のコードを入力
- メール通知の時と同じようにトリガーを設定
こちらもフォームにデータを入力して通知がメールに飛ぶか確認してみましょう!!
如何だったでしょうか?
今回、私も初めて利用してみたのです割と簡単に設定が可能でした。
GASを使うことで色々できることが増えるのでぜひ皆さんも試してみてください。
それでは皆さん良い業務ハックライフを~