【セルフ情シス】アプリもクラフト(DIY)!Google AppSheet×GAS(Google Apps Script)で、申請→半自動化システムの構築!!

Google Workspaceを導入しているけれど、「こんな機能が欲しいけど、あと一歩手が届かない」…そんな経験はありませんか?複雑な関数は壊れやすく、既製品の勤怠システムは従量課金でコストがかさむ上に、自社のフローに合わないことも。

「ならば自分で作るか」そう一念発起し、今回初めてアプリのDIYに踏み切りました。

実は、Google Workspaceユーザーなら追加コストなしで、自分だけの「業務アプリ」を作れることをご存知でしょうか?今回は、AI(Gemini 3.0 Pro)とGoogle AppSheet、そしてGAS(Google Apps Script)を駆使して、勤怠管理・有給管理の半自動勤怠管理システムをDIYした事例と、そこから得られた「AI活用のリアル」をシェアします。

既存システムの限界と「アプリ自作」という選択

Google Workspaceは素晴らしいコラボレーションツールですが、承認ワークフローや細かい業務管理となると、少し弱点が見えてきます。スプレッドシートで複雑な関数を組んで管理しようとしても、誰かが誤って操作した拍子に計算式が壊れてしまうリスクはつきものです。 一方で、市販の有給管理や打刻システムは便利ですが、その多くが「ユーザー数ごとの従量課金」です。さらに、「もう少しこうしたい(当事務所は会計事務所で繁忙期が偏るため、変形労働時間制を採用しています)」となると、既製品では小回りが効かず、結局手作業による修正が発生します。 そこで出した答えが、「アプリをクラフト(手作り)する」ことでした。 「アプリなんてそもそも作れるの?」と思われがちですが、GoogleにはAppSheet(アップシート)があります。2023年からGoogle WorkspaceのプランにはAppSheet の有料プラン(AppSheet Core)が含まれており、実質無料でノーコード開発が可能なのです。

Gemini 3.0 Pro × AppSheetでの開発:AIはどこまで使える?

開発にあたっては、まずはGemini 3.0 Proと、作りたいものの「要件定義」を細かく詰めていきます。 しかし、実際のアプリ構築フェーズでは壁にぶつかりました。 コードを書くのが得意なGeminiも、AppSheetのようなGUI(画面操作)ベースのツールは苦手のようです。「画面のスクリーンショット」を見せて指示を仰いでも、誤った(不明確な)指示が多く、正直なところかなり骨が折れました。Gemini 3.0 Proになってマルチモーダル機能がかなり向上したものの、知識のカットオフというところも影響しているのかと思います。 そこで、Geminiと協力して何とか最低限のものを作成してから、YouTubeなどでAppSheetの機能の基礎部分を学び直しました。基礎知識がつくと、Geminiの指示を「読み替えて」正しく理解できるようになり、何とか思ったものが作れました。

AppSheetのオートメーション機能で「承認フロー」を効率化

アプリ運用の要となるのが、AppSheetの「オートメーション機能(Automation)」の実装です。

例えば、従業員が有給申請を出したとしても、管理者である私がそれに気づかなければ意味がありません。かといって、申請が来ていないか確認するために、毎日数回AppSheetをクロール(巡回)するのは非効率で、大きなストレスになります。

そこで、以下の自動通知フローを実装しました。

  1. 申請通知: 従業員から申請が来たら、即座に私(管理者)へメール通知が届く。
  2. 承認通知: 私が内容を確認しアプリで「承認ボタン」を押すと、今度は申請者に「承認されました」というメール通知が自動送信される。

これにより、私は常にアプリを監視する必要がなくなり、通知が来たときだけ対応すればよいという「待ちの管理」が実現しました。通知のメールにもその申請へのリンクを付けていますので、一々立ち上げてログインして・・・という手間もありません。

この仕組みこそが、自作アプリを実務で回すための鍵となりました。

GASで実現!「スプレッドシート魔改造」による自動化

実際に作成したアプリ画面です。PCでもスマホアプリでも使えます。

有給申請フォームです。

今回作成したアプリは、以下の機能を備えています。

  • 出退勤打刻(休憩時間・法内・法定外残業の自動計算)
  • 残業申請
  • 有給休暇(半休・時間有給・夏休み含む)の申請
  • 当日欠勤届

これらが一つのアプリに統合されています。アプリで入力されたデータはすべてGoogleスプレッドシートに蓄積されます。ここまでデータが集まれば、ここでGoogleスプレッドシートの魔改造、GAS(Google Apps Script)の出番です。

実装した主な自動化の仕組みは以下の2点です。

  • 給与計算用データの自動集計
    勤怠データを従業員ごと、給与の締日ごとに自動で集計。これを給与計算ソフトに入力するだけで作業が完了します。
  • 有給休暇の完全自動管理
    入社日を入力すると、付与日に自動で有給が付与されます。さらに、アプリから有給申請(取得)を行うと、残日数が自動計算され、従業員は自分のアプリ画面でいつでも残日数を確認できます。また、時間単位有給の申請・自動計算にも対応しています。

AI丸投げはNG?開発で痛感した「人間の知識」の必要性

今回の開発を通じて痛感したのは、「AIへの丸投げはうまくいかない時もある」という現実です。

例えば、残業計算や有給付与のロジックを組む際、私自身に労働基準法の知識がなければ、Geminiとの要件定義すら詰め切れませんでした。また、AppSheetの仕様を理解していないと、AIの回答が正しいかどうかの判断もつきません。

AIは強力なパートナーですが、あくまで「副操縦士」です。操縦桿を握る私たちが知識をアップデートし続けなければ、理想のシステムには到達できないのです。

まとめ

Google AppSheetとGASを組み合わせることで、コストをかけずに、自社に完全にフィットした勤怠管理システムを構築することができました。

重要なポイントは以下の3点です。

  • Google WorkspaceユーザーならAppSheetを活用すべき
  • オートメーション機能を使えば、確認作業を自動化し「待ちの管理」ができる
  • AI(Gemini)は要件定義やコード生成には強いが、GUI操作は時に不安定

「難しそう」と諦める前に、まずは小さな業務からアプリ化に挑戦してみませんか?自分たちの手で業務フローを改善できた時の達成感は、何物にも代えがたいものがあります。

CTA

あなたの会社でも「Excelやスプレッドシートの管理が限界」と感じている業務はありませんか?

まずは無料のGoogle AppSheetで、簡単な申請アプリから作ってみることをおすすめします。もし開発で詰まったら、YouTubeでの学習とGeminiへの相談を組み合わせてみてください。

「こんなアプリを作ってみた!」という体験談があれば、ぜひコメント欄で教えてください!

代表税理士 今北 有俊