Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /home/komaty/yoshikazu-komatsu.com/public_html/wp-content/themes/sango-theme/library/functions/style-shortcode.php on line 678
Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /home/komaty/yoshikazu-komatsu.com/public_html/wp-content/themes/sango-theme/library/functions/style-shortcode.php on line 678
GoogleフォームとGoogle Chatを連携すれば、社内ヘルプデスクの問い合わせ受付から情シス担当者への通知まで、Google Apps Script(GAS)を使って無料で自動化できます。
必要なのはGoogle Workspaceのアカウントと、この記事で紹介するGASのコードだけです。
プログラミング経験がなくても、コピー&ペーストで30分あれば構築できます。
私自身、従業員約120名の企業で情シス部門の運用改善を担当していた際、この仕組みを導入しました。
結果として、月間約80件あった情シスへの直接問い合わせ(口頭・メール・チャットでのバラバラな連絡)が、フォーム経由の一元管理に切り替わり、対応漏れがゼロになりました。
さらに、自動分類と通知の仕組みにより、実質的な対応工数は月35件相当まで削減できています。
なぜ社内ヘルプデスクの自動化が急務なのか
2026年5月時点、企業の情シス部門が抱える課題は深刻化しています。IPA(情報処理推進機構)の「DX白書2024」によれば、従業員100〜300名規模の企業で専任の情シス担当者は平均1.8名。いわゆる「ひとり情シス」「ふたり情シス」の状態です。
一方で、リモートワークの定着やSaaSツールの増加に伴い、社内からの問い合わせは増え続けています。「VPNがつながらない」「SaaSアカウントを発行してほしい」「パスワードをリセットしたい」といった日常的な依頼が、メール・口頭・Slack・Chatとバラバラなチャネルで飛んでくるのが実態です。
情シス対応が属人化する3つの原因
現場で運用改善に取り組む中で見えてきた、問い合わせ対応が破綻する典型的なパターンは次の3つです。
- 受付チャネルが統一されていない:メール、口頭、Chat、電話など複数経路で問い合わせが入り、誰が何を対応しているか把握できない
- 優先度の判断が担当者の頭の中にしかない:「PCが起動しない」と「社内Wikiの表示崩れ」が同じ扱いで処理される
- 対応履歴が残らない:同じ質問に何度も回答する、退職時の引き継ぎで過去対応が追えないといった問題が発生する
これらは専用のITSMツール(ServiceNowやJira Service Managementなど)を導入すれば解決できますが、年間ライセンスコストは最低でも数十万円からです。100名規模の企業では予算確保のハードルが高いのが現実でしょう。
そこで効果的なのが、すでに契約しているGoogle Workspaceの標準機能であるGoogleフォーム、Google Chat、Google Apps Scriptを組み合わせたアプローチです。追加コストゼロで、必要十分なヘルプデスク機能を実現できます。なお、Google Workspaceをこれから導入する場合は、Google Workspaceのプロモーションコードを利用すると初年度15%割引で始められるため、コスト面のハードルはさらに下がります。
全体構成:Googleフォーム × Google Chat 自動化の仕組み
まず、完成形のデータフローを把握しておきましょう。
- 社員がGoogleフォームから問い合わせを送信する
- 回答がGoogleスプレッドシートに自動記録される
- GAS(Google Apps Script)がフォーム送信をトリガーに起動する
- 問い合わせカテゴリに応じて、該当するGoogle Chatスペースに通知メッセージを自動投稿する
- (任意)対応ステータスをスプレッドシート上で管理し、完了時に依頼者へ自動返信する
この構成の利点は、新しいツールを一切導入しない点にあります。Google Workspaceユーザーなら全員が日常的に使っているアプリだけで完結するため、社員への教育コストがほぼゼロです。
ステップ1:問い合わせ用Googleフォームを設計する
フォーム設計で最も重要なのは「情シス担当者が追加質問なしで対応を開始できる」情報を漏れなく取得することです。私が実際に運用して最終的に落ち着いた項目構成を紹介します。
推奨フォーム項目
- 氏名(記述式・必須):フォーム送信者のGoogleアカウント名と一致しないケースがあるため、明示的に入力させる
- 所属部署(プルダウン・必須):管理画面から選択肢をメンテナンスしやすいプルダウン形式がおすすめ
- 問い合わせカテゴリ(プルダウン・必須):「PC・端末トラブル」「アカウント・パスワード」「ネットワーク・VPN」「ソフトウェア・SaaS」「その他」の5分類が実用的
- 緊急度(ラジオボタン・必須):「業務停止(至急)」「業務に支障あり(当日中)」「急ぎではない(3営業日以内)」の3段階
- 詳細内容(段落式・必須):最低50文字以上の入力を検証ルールで設定すると、情報不足の問い合わせが激減する
- スクリーンショット(ファイルアップロード・任意):エラー画面の共有に必須。Google Driveに自動保存される
設計時の注意点:現場で学んだ失敗談
最初のバージョンでは項目を10個以上設置してしまい、社員から「入力が面倒だから直接聞きに行く」と言われた経験があります。フォームの入力完了率を計測したところ、項目が8個を超えると完了率が40%以下に急落しました。最終的に上記の6項目に絞ったことで、完了率は92%まで回復しています。
もう一つの失敗は、カテゴリ分類を細かくしすぎたことです。当初は12カテゴリに分けていましたが、社員が正しく選べず誤分類が30%を超えました。5カテゴリに統合してからは誤分類率が5%以下に収まっています。
ステップ2:Google Apps ScriptでChat通知を実装する
フォームの回答をGoogle Chatスペースへ自動通知するGASコードを実装します。ここではIncoming Webhook方式を使います。
Google ChatスペースのWebhook URLを取得する
- Google Chatで通知先のスペースを開く(例:「情シスヘルプデスク」スペースを新規作成)
- スペース名横の「▼」→「アプリと統合」→「Webhook」を選択
- Webhookの名前(例:「ヘルプデスク通知Bot」)を入力し、「保存」をクリック
- 生成されたWebhook URLをコピーする
GASコードの実装
Googleフォームに紐づくスプレッドシートを開き、「拡張機能」→「Apps Script」からエディタを起動します。以下のコードを貼り付けてください。
function onFormSubmit(e) {
// フォーム回答の取得
var responses = e.values;
var timestamp = responses[0];
var name = responses[1];
var department = responses[2];
var category = responses[3];
var urgency = responses[4];
var detail = responses[5];
// 緊急度に応じた絵文字とラベル設定
var urgencyLabel = "";
if (urgency.indexOf("業務停止") !== -1) {
urgencyLabel = "🔴 業務停止(至急)";
} else if (urgency.indexOf("業務に支障") !== -1) {
urgencyLabel = "🟡 業務に支障あり(当日中)";
} else {
urgencyLabel = "🟢 急ぎではない(3営業日以内)";
}
// カテゴリ別Webhook URL(通知先スペースの振り分け)
var webhookUrls = {
"PC・端末トラブル": "YOUR_WEBHOOK_URL_1",
"アカウント・パスワード": "YOUR_WEBHOOK_URL_2",
"ネットワーク・VPN": "YOUR_WEBHOOK_URL_1",
"ソフトウェア・SaaS": "YOUR_WEBHOOK_URL_2",
"その他": "YOUR_WEBHOOK_URL_1"
};
var webhookUrl = webhookUrls || webhookUrls["その他"];
// Google Chatに送信するメッセージ
var message = {
"text": "📩 新しいヘルプデスク問い合わせ\n"
+ "━━━━━━━━━━━━━━━\n"
+ "👤 氏名: " + name + "\n"
+ "🏢 部署: " + department + "\n"
+ "📂 カテゴリ: " + category + "\n"
+ "⚡ 緊急度: " + urgencyLabel + "\n"
+ "━━━━━━━━━━━━━━━\n"
+ "📝 内容:\n" + detail + "\n"
+ "━━━━━━━━━━━━━━━\n"
+ "🕐 受付時刻: " + timestamp
};
// Webhook送信
var options = {
"method": "post",
"contentType": "application/json; charset=UTF-8",
"payload": JSON.stringify(message)
};
UrlFetchApp.fetch(webhookUrl, options);
}トリガーの設定
コードを貼り付けたら、Apps Scriptエディタの左メニューから「トリガー」を選択し、以下の設定で新規トリガーを追加します。
- 実行する関数:onFormSubmit
- イベントのソース:スプレッドシートから
- イベントの種類:フォーム送信時
この設定により、フォームが送信されるたびにGASが自動実行され、Google Chatに通知が届きます。
ステップ3:対応ステータス管理と自動返信を追加する
基本的な通知だけでも十分効果がありますが、対応漏れを防ぐためにスプレッドシートでステータス管理を行う仕組みを追加すると、運用品質が大きく向上します。
スプレッドシートでのステータス管理
フォーム回答が記録されるスプレッドシートに、以下の列を手動で追加します。
- G列:対応ステータス(「未対応」「対応中」「完了」のプルダウン)
- H列:対応者名(情シスメンバーのプルダウン)
- I列:対応メモ(自由記述)
- J列:完了日時(日付形式)
条件付き書式を設定して、「未対応」の行を赤色、「対応中」を黄色、「完了」を緑色にすると、一覧での視認性が格段に上がります。実際にこの色分けを導入したところ、週次ミーティングでの対応状況確認が5分以内で完了するようになりました。
完了時の自動返信(応用編)
ステータスが「完了」に変更された際に、依頼者へGmailで自動返信する機能も追加できます。以下のコードをApps Scriptに追加します。
function onStatusChange(e) {
var sheet = e.source.getActiveSheet();
var range = e.range;
// G列(ステータス列)の変更を検知
if (range.getColumn() === 7 && range.getValue() === "完了") {
var row = range.getRow();
var email = sheet.getRange(row, 2).getValue(); // B列にメールアドレスがある場合
var name = sheet.getRange(row, 2).getValue();
var category = sheet.getRange(row, 4).getValue();
var memo = sheet.getRange(row, 9).getValue();
var subject = "【対応完了】ヘルプデスク問い合わせ:" + category;
var body = name + " さん\n\n"
+ "お問い合わせいただいた件(" + category + ")の対応が完了しました。\n\n"
+ "対応内容:\n" + memo + "\n\n"
+ "ご不明点があれば、再度フォームからお問い合わせください。\n"
+ "情報システム部";
GmailApp.sendEmail(email, subject, body);
}
}このトリガーは「スプレッドシートから」→「編集時」で設定します。
他の方法との比較:コストと機能のバランス
| 方法 | 初期コスト | 月額コスト(50名規模) | 構築時間 | カスタマイズ性 |
|---|---|---|---|---|
| Googleフォーム + Chat + GAS | 0円 | 0円(Workspace契約内) | 30分〜1時間 | 中(GAS知識が必要) |
| Jira Service Management | 0円 | 約55,000円〜 | 2〜5日 | 高 |
| ServiceNow | 要見積 | 約200,000円〜 | 1〜3ヶ月 | 非常に高 |
| Microsoft Forms + Teams + Power Automate | 0円 | 0円(Microsoft 365契約内) | 1〜2時間 | 中 |
50名〜200名規模の企業で、まず問い合わせの一元管理と自動通知を実現したい場合は、Googleフォーム + Chat連携が最もコストパフォーマンスに優れています。SLA管理やナレッジベース連携まで必要になった段階で、Jira Service Managementなどへの移行を検討するのが現実的なステップです。
なお、Google Workspace自体の導入コストを抑えたい場合は、Google Workspaceプロモーションコードによる15%割引を活用すると、Business Starterプランなら1ユーザー月額680円(税抜)から利用できます。50名で契約した場合、年間で約72,000円の削減になる計算です。
導入前後のビフォーアフター:120名規模企業での実績
2024年8月に導入し、約1年半運用した結果を共有します。
定量的な変化
- 月間問い合わせ件数:口頭・メール経由80件 → フォーム経由に一元化後、実質対応件数35件(FAQ自己解決の促進による削減)
- 平均初動対応時間:4.2時間 → 1.1時間(Chat通知による即時把握が寄与)
- 対応漏れ件数:月3〜5件 → 0件(スプレッドシートのステータス管理が機能)
- 社員満足度(四半期アンケート):3.1 → 4.4(5点満点)
意外な副次効果
想定していなかった効果として、フォームの問い合わせデータが蓄積されることで「よくある質問」のパターンが数値で可視化できた点があります。カテゴリ別の集計を取ったところ、「アカウント・パスワード」関連が全体の38%を占めていることが判明しました。これをきっかけにセルフサービスパスワードリセット(Google WorkspaceのSSO連携)を導入し、さらに月15件の問い合わせを削減できています。
また、部署別の問い合わせ傾向から、営業部門でのVPNトラブルが突出していることがわかり、調査の結果、特定のモバイルルーターとの相性問題を特定できました。データに基づく根本原因の特定は、仕組み化する前には難しかったことです。
運用を安定させるための3つのコツ
1. フォームURLを社内ポータルの目立つ場所に固定する
Google Sitesで作成した社内ポータルのトップページにフォームへのリンクボタンを配置するのが最も効果的でした。「困ったらここ」と社員が迷わない導線設計が、フォーム利用率を左右します。Google ChatスペースのトピックにもフォームURLを固定表示しておくと、口頭で問い合わせを受けた際に「こちらから送ってください」と誘導しやすくなります。
2. 週次で未対応チケットの棚卸しを行う
仕組みを作っても、確認する習慣がなければ形骸化します。毎週月曜の朝にGASで「未対応件数」をChatスペースに自動投稿するスクリプトを追加すると、対応漏れの早期発見につながります。
3. 四半期ごとにフォーム項目を見直す
問い合わせ内容のトレンドは変化します。SaaSの入れ替えやセキュリティポリシーの変更に合わせて、カテゴリ選択肢を更新するサイクルを設けてください。古い選択肢が残っていると誤分類の原因になります。
よくある質問
Q. Google Workspace Business Starterプランでもこの仕組みは使えますか?
A. はい、利用できます。Googleフォーム、Google Chat、Google Apps Scriptはすべてのプランで利用可能です。Business Starterプランは月額800円(税抜)から始められるため、小規模チームでも導入しやすい構成です。
Q. GAS(Google Apps Script)を触ったことがなくても構築できますか?
A. 記事内のコードをコピー&ペーストし、Webhook URLを差し替えるだけで動作します。プログラミング経験がない方でも30分程度で設定可能です。カスタマイズする場合はJavaScriptの基礎知識があると便利ですが、必須ではありません。
Q. Google Chat以外の通知先(SlackやMicrosoft Teamsなど)にも対応できますか?
A. GASのUrlFetchApp.fetchで送信先URLを変更すれば、SlackのIncoming WebhookやTeamsのWebhookにも同じ仕組みで通知できます。メッセージのJSON形式は各サービスの仕様に合わせて調整が必要です。
Q. 問い合わせ件数が多い場合、通知が多すぎて逆に見落としませんか?
A. 月間50件を超える場合は、カテゴリ別に通知先スペースを分割することを推奨します。記事内のコードでは、カテゴリに応じてWebhook URLを振り分ける仕組みを実装しているため、担当領域ごとに通知を受け取れます。緊急度「業務停止」の場合のみ全体スペースにも同時投稿するといった拡張も可能です。
Q. 無料のGoogleアカウント(個人向けGmail)でも使えますか?
A. Google ChatのWebhook機能はGoogle Workspaceの有料プラン専用のため、個人向けGmailアカウントでは利用できません。Google Workspaceの導入を検討される場合は、プロモーションコードを利用すると初年度15%割引で契約できるため、コストを抑えて開始できます。
まとめと次のステップ
GoogleフォームとGoogle Chatの連携による社内ヘルプデスク自動化は、Google Workspaceの標準機能だけで追加コストなく実現できる、情シス部門の負荷軽減策です。フォームで受付を一元化し、GASでChatへ自動通知する仕組みを構築することで、対応漏れの防止と初動時間の短縮を同時に達成できます。
まずは以下の順序で着手してください。
- 問い合わせカテゴリを5つ以内に絞ったGoogleフォームを作成する
- 情シス対応用のGoogle Chatスペースを作成し、Webhook URLを取得する
- 記事内のGASコードを貼り付け、フォーム送信トリガーを設定する
- テスト送信で通知が届くことを確認し、社内に展開する
まだGoogle Workspaceを導入していない場合は、14日間の無料試用で一通りの動作確認が可能です。本格導入時にはGoogle Workspaceプロモーションコード(初年度15%割引)を活用して、ランニングコストを最適化することをおすすめします。
