Google AppSheet で簡単な社内アプリを作成してみる

はじめに

今年も懲りずにデータ関連の記事を書こうと思います。
と言っても、どちらかというとデータを「利用」する側を取り上げます。

今回、社内のデータ利活用で、簡単な参照アプリ的なものはできないかなと考えました。

自分はアプリ屋さんではないので、
そんな人でも利用できるサービス(ツール)をどうするかを考えるわけですが、
選定ポイントは以下の3つとしました

  • ノーコードで作成可能
  • 低コスト
  • 社内データ連携性

上記を満たしそうなものとして、GoogleのAppSheetが良さそうであったので触ってみることにしました。
自社で契約している Google Workspace のエディションにも含まれているのでコレだなと。

Google AppSheet とは

ChatGPT先生によると(あえてGemini先生には聞かず)

Google AppSheet は、コードを書かずに業務アプリを作成できるノーコード開発プラットフォームです。
Google スプレッドシート、Excel、BigQuery などのデータを元に、フォーム、ダッシュボード、ワークフロー自動化などを備えたアプリを素早く構築できます。

だ、そうです。

やりたいこと

とりあえずAppSheetを使ってやりたいことを挙げます。

  • ひとまずデータの集約がしたい
  • よく使う集計(例えば合計とか)された値をすぐ参照したい

アプリ作成と設定

では早速アプリを作ってみましょう。

1. AppSheetのホーム画面にログイン、[ Create ] から [ Start with existing data ] を選択

2. アプリ名を入力し [ Choose your data ] を選択

3. [ Google Sheets ] を選択、今回ダミー用として作成したスプレッドシートを指定

できました。

はいもうできたよ感がすごいですね、なんかの詐欺広告みたry

ちなみにスプレッドシートのダミーデータ、の中身はこんな感じです。

ID 氏名 部署 申請日 費目 金額 (円) 承認ステータス 備考
1001 佐藤 健太 営業部 2025/11/25 交通費 1280 承認済み クライアント訪問 (新宿)
1002 田中 雅美 開発部 2025/11/26 消耗品費 4500 申請中 開発用ソフトウェアライセンス
1003 鈴木 誠 総務部 2025/11/27 会食費 12800 承認済み 社内懇親会費用
1004 高橋 由美 経理部 2025/11/27 交通費 680 承認済み 銀行振込移動費
1005 山本 浩司 人事部 2025/11/28 セミナー参加費 35000 申請中 新卒採用セミナー
1006 小林 涼子 営業部 2025/11/28 出張費 48900 承認済み 大阪出張 (新幹線代含む)
.... .... .... .... .... .... .... ....


一度利用者視点のビュー表示をしてみます。

デフォルトのレイアウトはシンプルです、表の各行がシンプルな形で表示されています。

行をクリックすると各カラムの値が表示されました。

シンプル過ぎてすぐに気づくところなのですが、
最初からグループ化(GROUP BY)して良さそうな列を自動でグループ化してくれるみたいです。
今回は部署毎にまとめられていました。
(この設定は次の [ Views ] で変更可能)

編集表示に戻り、利用者が分かりやすいようナビゲーションメニューの [ Views ] で行の見え方を調整します。
[ Primary header ]、[ Secondary header ] を適当なカラムに変更し、[ SAVE ] 。

行の表示が変更されました。

なお別のデータを追加したい場合は、ナビゲーションメニューの [ Data ] から可能です。
(同じようにリスト表示させる場合は [ Views ] の [ PRIMARY NAVIGATION ] で追加)
これらデータのソース側に更新があった場合はどうなるのか確認したところ、 ちゃんとアプリ側にも反映してくれるようでした。

集計を試す

今回想定していたシナリオでどう実装していいかわかなかったのがコレ。
多少強引ですが別データ(別シート)を追加し、そこに Virtual Column として SUM 関数を作成してみました。

別データに [ Virtual Columun ] を作成。

[ App formula ] に最初の経費リスト(テーブル)の金額合計を返すように式を作ります。


    SUM(
      SELECT(シート1[金額 (円)], TRUE)
    )
    

おまけでもう1行 Virtual Column を追加しましょう、営業部だけの金額合計についても作成してみます。


    SUM(
      SELECT(シート1[金額 (円)], [部署] = "営業部", TRUE)
    )
    

できたのがこちら。だいぶショボいry

こんな感じで集計専用ビューを無理矢理作ったけど、、もっとスマートなやり方があればどなたか教えてください。。

感想

データの利活用という観点では若干微妙な感じはありましたが、
アプリ作成という意味ではプログラミング知識がなくともある程度使えるレベルまで簡単に作れることがわかりました。
勤怠アプリ、ワークフローなんかも最低限の機能ということであればこれで作れるかも、とか妄想。
このような手軽なサービスを探して上手く活用していけたら未来は広がりますね。

それでは今回はこの辺で、最後までお付き合いいただきありがとうございました。

コメント

このブログの人気の投稿

ProxmoxでLet's Encryptを使用した証明書セットアップをやってみた

AIと共に「考える」エンジニアに!

ルーティングって何で必要で、何してるの?を React Routerで理解する