AppSheet を難しいものと考えているあなたへ

みなさん、こんにちは。
キジと申します。

今回は、2022年のQiita のAdvent Calendar 2022 「Google Workspace 標準機能 Advent Calendar 2022」の第15日目の記事として記述します。

このAdvent Calendarは、Googleのツールの標準機能でできることをみんなで書いていこう、というテーマらしいので、興味があれば是非見てみてください。

さて、私はAppSheetについて記載していこうと思います。

AppSheetって?

みなさん、AppSheetってご存知ですか?
まだ知名度は低いかもですが、Googleが提供している、今流行の、ローコードでアプリを作れちゃうぜ、というツールです
以後、お見知りおきください。

↓こんな感じで、それっぽいアプリが作れます
こちらの例は、経費を申請するアプリの入力画面のイメージです。
ご覧の通り、スマホからでもアクセス可能です、

入力画面の例

アプリから入力情報を送信すると、Google スプレッドシートに、データを溜めていくことが可能です。
↓こんな感じで、申請情報が溜まっていきます。

データが蓄積される

このようなアプリであれば、Google スプレッドシートに、どのような項目を保持させたいか、という定義さえしてやれば小一時間あればβ版のアプリが作れると思います。

先述の通り、AppSheetはローコードでアプリを作れますが、アプリを作ったことがない人には少しハードルが高いと思われるかもしれません。
アプリを作る際には必要なことは、最低限以下が必要です、

  • データベース

  • 入力画面

  • 出力画面

「アプリ」と聞くと、「あれもしたい」、「これもしたい」、「たいしたことができないアプリって微妙かも。。」って思うかもしれません、
全てを最適な形にしようとすると、考察に時間がかかってしまい、実行に移すことに躊躇するかもしれません。
まずはAppSheetを入力装置として割り切って、AppSheetの世界を覗いてみてはいかがでしょうか。

つまり、最初の例のアプリのように、Google スプレッドシートと、入力画面だけ作っておく、ということです。
出力画面や、ごちゃごちゃした機能は、最初の段階では不要です。
慣れてきたときに、様々な機能を試せばいいと思います。

AppSheetの入力装置としてのメリット

さて、AppSheetを入力画面として作成した場合だけでも、以下のメリットがあります。

  • 入力時にGoogle スプレッドシートを直接開かなくてもいいこと

  • 入力後に、編集も可能であること

  • アクセス権を設定して、他者が作成したデータを参照/編集できないようにすること(Sliceという機能を使う上級編です)

ひとつずつ見ていきましょう!

入力時にGoogle スプレッドシートを直接開かなくてもいい

例えば、交通費申請用の入力装置をAppsheetで作るとしましょう。
交通費申請用のスプレッドシートを用意して、 AppSheetに紐づけるだけで、入力画面は作成できます。
(AppSheetを作成する際に、「このスプレッドシートを使用するよ」と指定するだけで、冒頭の例のような入力画面を作ってくれます、スゴい!)

スプレッドシートを開かずにデータ入力が可能なので、スマホから入力するときは便利です。
(スマホでスプレッドシートの操作は辛いですよね。。)

あとは、後述する「Slice」という機能を使うと、自分が作成したデータだけを表示できるので、誤って他者のデータを閲覧 / 編集 / 削除 してしまうリスクが防げます。

入力後に、編集も可能であること

入力した後に、編集することも可能です。
アプリとしては当然ですね。

アクセス権を設定して、他者が作成したデータを参照/編集できないようにする

こちらは、上級編の内容です。
実は残念ながら、このままだと、他者が作成したデータも全て閲覧 / 編集可能な状態となります。
アプリとしては、自分が作成したデータだけを閲覧 / 編集 可能にしたいですよね。

もちろん、できますよ!

ただ、ちょっとした工夫が必要です。
それが、Slice という機能です。 
簡単に説明すると、条件に合致したデータだけをアプリ上で表示させることができる機能!
それが Slice です。

今回のアプリのSliceの使い方をご紹介します。
前提として、AppSheetを利用する際は、Googleアカウントにログインを必須にする / しないの選択が可能です。
ここで、「ログインを必須」にします。
すると、ログインユーザのメールアドレスを取得することができるので、
入力画面に「メールアドレス」を自動設定するようにしておきます。

入力が完了すると、当然、このメールアドレスはスプレッドシートに保持されます。
データを閲覧する際には、「ログイン時のメールアドレスと、スプレッドシートのメールアドレスが同じデータだけを表示させる」というSlice を設定することで、自分が入力したデータだけを表示させることができます。

Slice は少し難しい概念かもしれないので、「ふーん」くらいに見てもらえればいいと思います。

ただし、何度も言う通り、この設定をしないと誤って他者のデータを閲覧 / 編集 / 削除ができてしまうのでSlice は覚えておくといいでしょう。

スプレッドシートでデータ分析

ここまで作ってしまえば、スプレッドシートでデータが蓄積されている状態となります。
入力データを分析したい場合は、Google スプレッドシートに実装してもいいかもしれません。
下の画像のように、ピボットテーブルグラフを作成して、分析を自由に行うことができます。
(グラフ程度ならAppSheetでも可能なので、試してみてください)

AppSheetを難しいものと捉えず、まずは入力装置として使用する。
そしてAppSheetの運用や、開発になれたら、新たな機能を開発していくという感じで使ってみてはいかがでしょうか?


この記事が気に入ったらサポートをしてみませんか?