業務効率化のために日常的なタスクの自動化は有用な手段です。
かつては、多くの人にとって「自動化=RPAなどのツール導入」を意味していましたが、昨今は、知識や経験がなくても「自分で自動化ツールをつくる」環境が整いつつあります。その背景には生成AIの高性能化によりWebブラウザ上で気軽にプログラミングできる環境が提供されるようになったことが挙げられます。
本記事では、生成AIを活用した身近な業務効率化ツール作成の具体例を紹介します。
タスクの自動化やAI活用による業務効率化の具体的な方法について知りたい方の一助となれば幸いです。
なお、本記事ではGAS(Google Apps Script)というGoogleが提供するプログラミングプラットフォームを利用した自動化方法を紹介するため、Google Workspaceを利用できる前提で記述します。
目次
GASとは何か?どんなツールが作れるのか?
GAS(Google Apps Script)とは、Googleが提供するプログラミングプラットフォームです。
GASの最大の特徴は、メール・カレンダー・スプレッドシートなどGoogle Workspace内のツールを簡単に参照・操作できることです。このため、日常の業務に関するさまざまなツールを作成することができます。
また、一度作成すれば決まった日時の繰り返し実行(トリガーと呼ばれます)ができるため、継続的な業務の効率化が期待できます。
GAS活用例1:会議室利用予定を社内に通知する
NCDCはリモートワークを主体とした働き方を採用しています。そのため、出社時にオフィス内の自分が使いたい場所が空いているかどうかは専用のGoogleカレンダーで確認する必要がありました。
この一手間を削減するため、GASによって毎朝Googleカレンダーからオフィスの利用予定を取得し、Slackに通知しています。
GAS活用例2:休暇予定を社内に通知する
チームメンバーの休暇の把握も、日々発生するタスクのひとつです。
リモートワークの場合、オフィスを見渡してメンバーが出社しているかどうか確認するということができないため、NCDCでは当日・翌営業日の休暇予定などをGoogleカレンダーから取得してSlackに投稿しています。
(この通知を実現するための仕組みとして、休暇取得時は事前に自身のGoogleカレンダーに休暇予定を追加することを社内ルールとしています)
本記事では、これら活用例と同じくGoogleカレンダーを利用したGASツールを作成していきます。
実際にGASでツールを作成してみる
毎日の始業時、当日のスケジュールを確認する方は多いのではないでしょうか。
今回は、GASで毎朝自動でメールにスケジュールを送るツールを作成します。ツール作成のアシスタントにするAIは、Gemini 2.5 Flashです。
GeminiはGoogleが提供しているAIモデルで、Googleの提供するサービスに詳しいことが特徴です。GASで実行したいことを送信すると、具体的な画面操作方法やソースコードを出力してくれます。
作成を始める前に
生成AIの出力内容にはランダム性があり、同じことを聞いても毎回少し異なる回答を返します。この記事を参考に実際にツールを作成してみる場合、前述のランダム性によって異なる出力結果になる可能性があること、そしてGASやGoogleサービス側の仕様変更によっても回答が変わる可能性があることをご了承ください(本記事は2025年7月時点の情報に基づき作成しています)。
1. Gemini にツールの概要を伝える
まずはGeminiにアクセスし「GASを使って毎朝自動でメールにスケジュールを送るツールを作りたい」と送信します。
すると、Geminiが作成方法を回答してくれました。今回はこちらに沿って作成していきます。
上の画像には「ツールの概要」の部分だけを載せていますが、「GASを使って毎朝自動でメールにスケジュールを送るツールを作りたい」と指示するだけで、GASを利用する手順からGAS用のコードまで一気に回答を返してくれるので、Geminiが示した手順に沿って以下の流れで作業していきます。
2. GASプロジェクトを作成する
まずは、GASを書くための場所である「プロジェクト」を作成します。
Googleドライブにアクセスし、「新規」→「その他」→「Google Apps Script」を選択します。
次のようなダイアログが出たら、「スクリプトを作成」をクリックします。
後で分かりやすいように、プロジェクト名も変更しておきます。
画面左上の「無題のプロジェクト」をクリックします。
プロジェクト名は「Daily Schedule Mailer」とします。書き換えたら「名前を変更」ボタンをクリックします。
3. スクリプトを追加する
「スクリプト」とは、GASのプログラミングコードのことです。どのようなスクリプトを書くかによって、ツールの実行内容が変わります。
エディタが開いたら、最初から書かれている function myFunction() { ... }
をすべて削除して、Geminiが提示したコードを貼り付けます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
// Geminiによる出力例: function sendDailySchedule() { const emailAddress = "あなたのメールアドレス@example.com"; // ★あなたのメールアドレスに書き換えてください const timeZone = "Asia/Tokyo"; // ★タイムゾーンは日本時間(東京)になっています。必要であれば変更してください。 const today = new Date(); today.setHours(0, 0, 0, 0); // 今日の始まりに設定 const tomorrow = new Date(today); tomorrow.setDate(today.getDate() + 1); // 明日の始まりに設定 const calendar = CalendarApp.getDefaultCalendar(); const events = calendar.getEvents(today, tomorrow); let scheduleText = "【今日のスケジュール】\n\n"; if (events.length === 0) { scheduleText += "本日の予定はありません。\n"; } else { events.forEach(function(event) { const title = event.getTitle(); const startTime = Utilities.formatDate(event.getStartTime(), timeZone, "HH:mm"); const endTime = Utilities.formatDate(event.getEndTime(), timeZone, "HH:mm"); const description = event.getDescription(); const location = event.getLocation(); scheduleText += `・${title}\n`; scheduleText += ` 時間: ${startTime} - ${endTime}\n`; if (location) { scheduleText += ` 場所: ${location}\n`; } if (description) { scheduleText += ` 詳細: ${description}\n`; } scheduleText += "\n"; }); } const subject = `今日のスケジュール (${Utilities.formatDate(today, timeZone, "YYYY/MM/DD")})`; MailApp.sendEmail(emailAddress, subject, scheduleText); } |
Geminiが提示したコードの中に「★あなたのメールアドレスに書き換えてください」との記載があります。指示通りに2行目にある「あなたのメールアドレス@example.com」という部分を自分のメールアドレスに変更しましょう。
4. スクリプトを保存し、実行してみる
作成したスクリプトを保存します。スクリプトエディタのフロッピーディスクアイコン(保存ボタン)をクリックして、プロジェクトを保存します。
これでスクリプトが完成しました。それでは、まずは手動でスクリプトを実行してみましょう。
スクリプト実行の手順もGeminiが示してくれるのでその通りに行います。
1. スクリプトエディタの上部にある実行ボタン(▶︎のようなアイコン)をクリックします。
2. 「承認が必要です」というポップアップが表示されるので、「権限を確認」をクリックします。
3. 新しいウィンドウが開くので、自分のGoogleアカウントを選択します。
4. 「このアプリはGoogleによって確認されていません」と表示されることがありますが、これはあなたが作成した個人用スクリプトなので問題ありません。「詳細」をクリックし、「(プロジェクト名)に移動」をクリックします。
5. スクリプトがGoogleカレンダーとメールにアクセスすることを許可する画面が表示されますので、「許可」をクリックします。
今回は、Geminiが示した手順1〜5のとおりに実行しようとすると5に出てくる画面がGeminiの説明と少し異なっていました。
「許可」をクリックする代わりに「すべて選択」をチェックしてから、「続行」をクリックすればOKです。
このように、AIが示す手順と実際の画面が少し異なっている場合があります。その場合は、随時読み替えをしたり追加でGeminiに聞くことを推奨します。
5. 実行結果を確認する
GASに適切なアクセス権限が与えられると、スクリプトが実行されます。
実行ログに「実行完了」と出力されていることを確認して、メールの受信ボックスを見に行きましょう。
6. スクリプトを調整する
無事メールは届いており、本文も問題なさそうですが、メールタイトルが「今日のスケジュール(2025/07/189)」となっており問題がありました。
日付にあたる部分が「189」になってしまっているので、日付がうまく取得できていないようです。
このように、生成AIは正しくない回答をする場合があります。その場合は修正方法をAIに尋ね、スクリプトを変更する必要があります。
まずは、現在の状態と修正したい内容をGeminiに伝えます。
回答をもとに、スクリプトの37行目をGeminiが生成した修正コードに置き換えます。
1 2 3 4 5 |
// Geminiによる出力例: const subject = `今日のスケジュール (${Utilities.formatDate(today, timeZone, "yyyy/MM/dd")})`; |
再度実行ボタンを押すと、正しいタイトルのメールが受信できていました。調整は完了です!
7. 自動実行を設定する
毎日始業前に送信してほしいため、最後に自動実行を設定します。こちらもGeminiに方法を聞いてみます。
これまで説明してきたやり方と同じく、Geminiが示してくれる手順の通りに行います。細かい図説は省くのでぜひご自身で手順通りにできるか試してみてください。
トリガー設定画面を開くところまで進んだら、時間ベースのトリガーのタイプを「日付ベースのタイマー」に変更し、時刻を「午前8時~午前9時」に設定します。
「保存」すると、トリガーが追加されます。
これで明日から、8時台に自動でメールが送信されるようになります。なお、トリガーでは上図のように「8〜9時」のような選択肢しかないため、実行する時刻を正確に指定することはできません。
8. さらなるカスタマイズへ
Geminiをアシスタントとして、GASのツールが作成できました!
ここからさらに使いやすくカスタマイズをしていくことも可能です。例えば以下の案が考えられます。
- 休日はメールを送らないようにする
- 予定が0件の場合はメールを送らないようにする
- メール本文は会議のタイトル・時間のみの箇条書きとする
また、同じように生成AIに質問しながら、他のツールを作成することもできます。
- 議事録用のGoogleドキュメントを決まった時間に自動作成する
- Googleスプレッドシートの売上データをGoogleスライドの特定箇所に反映する
- Googleフォームの回答を独自集計する
いろいろなアイディアを考えながら、ツール作成やカスタマイズに楽しみつつ取り組んでいくのはいかがでしょうか。
本記事では、GASを活用した日常業務のツールを作成する方法をご紹介しました。
冒頭に述べたとおり、AIに自然言語で質問しながら進められるため、プログラミングの知識がなくてもこうしたツールを作成できる時代になってきています。本記事の紹介内容が皆さまの業務効率化につながれば幸いです。
AIエージェントやMCPの活用
ここまで、AIを活用して業務効率化ツールを自作する方法を紹介しましたが、AIを用いた業務効率化にはさまざまな方法があります。
最近は、ただAIが一問一答形式で質問に答えるだけではなく、指示に従い自律的にタスクを遂行する「AIエージェント」が注目されています。AIエージェントがさまざまなツールやデータと連携するための統一規格「MCP」の利用も進んでおり、これらを組み合わせることで、より高度で広範囲な業務の自動化と効率化が期待されています。
MCP(Model Context Protocol)とは、AIがさまざまな外部ツールやサービスを統一された方法で使えるようにするための接続ルールのようなもので、MCPサーバーを通じてGoogleサービスと連携できれば、AIエージェントがGoogleサービスのもつ情報を取得・操作できるようになります。
権限の設定などによりできることは異なりますが、例えば「明日、Aさんと30分間の会議ができる時間を教えて」という指示をすれば、AIエージェントがAさんと自分のGoogleカレンダーを確認して候補日時を回答するというような使い方も可能になります。
NCDCでは、MCPを利用することでさまざまなSaaSや社内システムと連携し、安全で高精度な自社専用AIを実現する法人向けの生成AIアシスタントを提供していますので、AIエージェントやMCPの活用にご興味のある方はお気軽にご相談下さい。
AI活用のご相談はNCDCへ
技術の進化は加速する一方です。どのようなかたちでAIを活用するにしても、変化の波に乗り遅れることなく、これらの先端技術が自社の開発プロセスや課題解決にどう貢献できるかを見極める視点が、これからのビジネスパーソンには不可欠です。
NCDCは、こうした先進的なAI技術を実際の業務に活かしたいと考える方々の挑戦をサポートし、新たなビジネス価値の共創をお手伝いしています。