【簡単】Googleフォームの回答をSlackに通知する7つのステップ

googleform

Googleフォームの通知は通常メールで届きますが、Slackで通知を受け取れて、社員で内容を共有できると便利だと思いませんか?
実は、GoogleフォームとSlackを連携させれば、Slackでの通知が可能です。
本記事では、GoogleフォームとSlackの連携方法と、連携後の活用方法を解説します。

▼ビジネスで使うなら「formrun」がおすすめ
フォームを用意したいけど、Googleフォームだとデザイン性や機能、セキュリティが気になる方は弊社の「formrun」がおすすめです。
専門知識は不要で、簡単にフォーム作成や問い合わせ管理などができます。
ビジネスでの利用では、formrunのユーザーのうち7割がGoogleフォームから変更しています。
以下のリンクから、無料でほとんどの機能が利用できますので、ぜひ試してみてください。

▼ ビジネス用フォーム作成ツール「formrun」とGoogleフォームの違いはこちらから
>> 「formrun」と「Googleフォーム」の違いを確認する

GoogleフォームとSlackの連携方法①Slackの管理者権限を設定する

Slackの設定ができるのは、管理者かオーナーになっているアカウントだけです。
ここでは、操作するアカウントが管理者になっているかを確認する方法と、管理者権限を設定する方法を説明します。

Slackアカウントが管理者になっているかの確認方法

まずはSlackアカウントが、管理者になっているか確認します。サイドバーにあるワークスペース名をクリックしてください。
「ツールと設定」にカーソルを合わせたときに、「メンバーを管理する」の文字が出てきたら、そのアカウントはオーナーか管理者です。

メンバーを管理する

管理者権限がない場合は、「メンバーを管理する」が出てきません。

ツールと設定

 

権限がない場合は、次に説明する方法で、管理者権限を付与してください。

Slackアカウントに管理者権限を設定する方法

オーナーか管理者のアカウントを使って、「ワークスペース名」→「ツールと設定」→「メンバーを管理する」とクリックしてください。
次のような画面が、ブラウザで開きます。

Slackアカウントに管理者権限を設定する方法

権限を設定したいアカウント氏名の右側にある「・・・」をクリックし、「アカウント種別を変更する」を選択すると、次のようなポップアップが表示されます。

アカウント種別変更

「ワークスペースの管理者」を選択し、「保存する」を選択すれば、変更完了です。

GoogleフォームとSlackの連携方法②Googleフォームの編集権限を追加する

Googleフォームは、内容が編集できるアカウントであれば、Slackとの連携作業ができます。
作業したいアカウントで、Googleフォームが編集できない場合は、以下の手順で編集権限を付与してください。
設定したいGoogleフォームの右上にある『︙』をクリックし、「共同編集者を追加」を選択します。

無題のフォーム

その後、現れるポップアップで、操作したいGoogleアカウントのメールアドレスを登録すれば、編集者への追加が完了です。

GoogleフォームとSlackの連携方法③Slackに通知用のアプリを入れる

Slackの通知用アプリである「Incoming WebHooks」を追加します。以下の手順で操作してください。
まず、Slackの左側にある「その他」から「自動化」をクリックしてください。

Slackに通知用のアプリを入れる

次に、Appをクリック→「Incoming WebHooks」を検索→出てきた「Incoming WebHooks」を追加します。

Appをクリック→「Incoming WebHooks」を検索→出てきた「Incoming WebHooks」を追加

その後、追加したいSlackのチャンネルを選択し、「Incoming WebHoogsインテグレーションの追加」をクリックします。

追加したいSlackのチャンネルを選択し、「Incoming WebHoogsインテグレーションの追加」をクリック

追加後に出てくる「Webhook URL」は、後の操作で使うので、コピーしてメモ帳などにペーストし、保存しておいてください。

GoogleフォームとSlackの連携方法④GASで連携する

Googleフォームに、GAS(Google Apps Script)で文字列を打ち込むことで、Slackと連携できます。
GASを入力するには、Googleフォームの右上の縦に並んだ3点をクリックしてください。スクリプトエディタを選択し、スクリプトを入力します。

スクリプトエディタを選択し、スクリプトを入力

以下のスクリプトをコピーして、Googleフォームのスクリプトエディタにペーストしてください。

// Slackに送信する関数
function sendToSlack(e) {
 // Webhook URL(SlackのIncoming Webhook URLを設定)
 var slackWebhookUrl = 'https://hooks.slack.com/services/XXXXX/XXXXX/XXXXX'; //

// フォームの送信内容を取得
 var response = e.namedValues;

 // メッセージのフォーマットを作成
 var message = "新しいフォームの回答が送信されました:\n";

 // 回答内容をメッセージに追加
 for (var question in response) {
  message += "*" + question + "*: " + response[question].join(", ") + "\n";
 }

// Slackに送信するためのペイロード
 var payload = JSON.stringify({
  text: message
 });

// WebhookにPOSTリクエストを送信
 var options = {
   method: 'POST',
   contentType: 'application/json',
   payload: payload
  };

 // Slackにメッセージを送信
 UrlFetchApp.fetch(slackWebhookUrl, options); 
}

// フォーム送信後に自動的に実行されるトリガーの設定
function setUpTrigger() {
  var form = FormApp.openById('YOUR_FORM_ID'); // GoogleフォームのIDを設定 
  ScriptApp.newTrigger('sendToSlack') 
   .forForm(form) 
   .onFormSubmit() 
   .create(); 
}

GoogleフォームとSlackの連携方法⑤WebhookのURLをコピペする

④の手順でコピペしたスクリプト内の「'https://hooks.slack.com/services/XXXXX/XXXXX/XXXXX'」の部分に、WebhookのURLを入力します。
Webhookは、③の手順の最後でメモ帳に保存したものを使ってください。
もし、保存していなかった場合、③の手順を再度行うことでURLが確認できます。
また、YOUR_FORM_ID の部分には、先ほど作成したGoogleフォームのIDを設定します。
(GoogleフォームのURLからIDを確認できます(https://docs.google.com/forms/d/フォームID/edit))
WebhookのURLを入力し終えたら、上部のバーの保存アイコンをクリックしてください。

保存アイコン

上の写真の赤で囲った部分です。

GoogleフォームとSlackの連携方法⑥トリガーを設定する

⑤の手順で開いたApps Scriptの左側にマウスカーソルを合わせると出てくる、編集メニューから「トリガー」をクリックします。

トリガー

「結果がありません。」という画面が出てきたら、「新しいトリガーを作成します。」をクリックします。
トリガーの「イベントの種類を選択」を「フォーム送信時」、「エラー通知設定」を「今すぐ受け取る」にして保存をクリックしてください。

トリガーを追加

上の赤で囲んだ部分が変更したところです。
保存をクリックしたとき、承認を求めるポップアップが出るので下の手順で承認します。
英語で表示されていたら、左下の「English(United States)」を、「日本語」に変更してください。

日本語に変更

使用するGoogleアカウントをクリックしてください。

アカウントをクリック

左下の「詳細」をクリックします。

詳細

「無題のプロジェクト(安全でないページ)に移動」をクリックしてください。

無題のプロジェクトに移動

ページ下部の「許可」をクリックします。

許可

最初の画面に戻るので、「保存」をクリックすると完了です。

保存

これで、Googleフォームの通知をSlackで受け取る準備が、すべて完了しました。

GoogleフォームとSlackの連携方法⑦動作を確認する

実際に、設定したGoogleフォームに回答をして、Slackに通知が来ることを確認します。

上のように、Slackに「Webhook」から、メッセージがきたら成功です。

GoogleフォームとSlackの連携による活用事例

GoogleフォームとSlackの連携による活用事例
GoogleフォームとSlackを連携することで、以下のような活用ができます。

問い合わせの担当者割り振りができる

Slackのスタンプ機能を使って、担当者の振り分けが可能です。
スタンプで即座に反応できるため、対応できる人がすぐに見つかります。誰が対応したかが他の社員に共有でき、業務の効率化につながります。

同じ形式でメッセージを送信できる

勤怠管理や日報など、同じ形式で送られた方が管理しやすいフォームは、Googleフォームで送付してもらい、Slackで管理すると便利です。
社員からの報告が、同じ形式でSlack内のチャットに並ぶことになるので、管理しやすくなります。Slackではなくメールに送付されると、1通1通開いて確認しなければなりません。
また、送付された日時も表示され、誰が提出していないかの把握が簡単です。

残業申請を承認しやすい

残業申請などの承認が必要な報告書は、Slackに送られてくることで、確認と承認がしやすくなります。
残業申請をSlackで承認するようにすることで、ワークフローのスムーズな進行が可能です。
その他Googleフォームを便利に活用する方法は、下の記事で多数紹介しています。下の記事で紹介した活用法も、Slackとの連携で共有でき、さらに便利です。
>>Googleフォーム活用事例6選紹介!メリット、注意点も解説

 

GoogleフォームからのSlackへの通知内容はカスタマイズ可能

GoogleフォームのGASを活用すると、以下のようなSlackでの通知をカスタマイズできます。
通知メッセージを装飾する
通知メッセージにリンクをつける
通知メッセージの書式を変える
また、Slack内のアプリ「Incoming WebHooks」の設定から、通知されたメッセージのアイコンやユーザー名の変更も可能です。
これらの通知メッセージのカスタマイズを行うことで、Googleフォームからのメッセージであると、すぐ判断できるようになります。

formrunならSlackとの連携も簡単

本記事で紹介した連携方法は、Slackを使っている会社で活用すると、業務の効率化につながって便利です。
弊社のフォーム作成ツール「formrun」でも、Slackとの連携は可能です。
本記事で紹介したGoogleフォームとSlackとの連携のようなスクリプトの入力が必要ないため、より簡単にSlackへの通知ができます。
formrunとSlackを連携させる方法について知りたい方はこちらの記事をご覧ください。
>>formrunのSlack通知連携について
また、formrunは、ビジネスでの利用に特化していて、手軽におしゃれな各種フォームを作成できるプラットフォームです。
ビジネスでの利用では、formrunのユーザーのうち7割がGoogleフォームから変更しています。
formrunの詳細は、以下からご確認ください。
>>公式サイト