GoogleAppSheetでスプレッドシートの課題をクリアするアプリを作成してみました

2023.11.28

こんにちは!アノテーション 事業部情シスの原田です。

みなさんノーコード使ってますか。

2023年7月からGoogle Workspaceの有料アカウントであればGoogleAppSheetのCore以上が追加料金なしで利用できるようになりました。

より多くの Google Workspace のお客様に AppSheet をご利用いただけるようになりました

もちろんこれまでと同様に無料アカウントでも10名までの共有は可能です。

今回は初めてGoogle AppSheetでアプリを作成を挑戦してみます。

非エンジニアでも手軽にアプリを作成できると噂されるAppSheetを利用して部内メンバーのリスト作成してみました。

スプレッドシートの課題解決すべく作成するもの

これまで、部内ではスプレッドシートでメンバーの氏名やアドレス、アカウントを管理していました。

スプレッドシートは使い勝手が良い一方で、編集中に誤ってデータが書き換えられたり、列がずれて記入されたり、フィルターが設定されたまま放置されるなど、共同編集の際にはデメリットも伴います。

さらに、既に2つのファイルに分かれているスプレッドシートで何かを管理している場合、移動して確認し、また元のファイルに戻るなど、手間がかかることもありました。

そこで、今回はこれらの課題を解決するために、メンバー管理用のアプリを開発することにしました。

 

達成したいことは、共同編集のデメリット解消と2つのファイルを1つのアプリにまとめることです。

メンバー管理のスプレッドシートはサンプルデータを用いた以下のものを利用します。

アプリ作成

まず、スプレッドシートからGoogle AppSheetを作成します。

メニューバーにある「拡張機能」から「AppSheet 」> 「アプリを作成」をクリックします。

下記の画面で少し待ちます。

データ量や環境によって時間が掛かる場合がありますが、今回は、10秒程度でアプリのエディタ画面に遷移しました。

これでベースとなるアプリは作成されました。

 

一度どのようなアプリが作成されたか確認してみます。

特に大きな問題はなさそうですが、いくつか設定をしていきます。

 

削除と編集を制限

まず誤削除を防止するために、アプリからレコードを削除できないようにします。

右上にあるDBのアイコンTable Settingsを開き、「Deletes」を外します。

 

編集も行わない場合は「Updetes」を外す、閲覧限定の場合は「Read-Only」を選択します。

 

次に編集できるカラムを限定したメンバーだけに設定します。ここでは氏名とメールアドレスは変更しない前提で設定します。

ただし、管理者だけは編集権限を付与します。ここではサンプルとして山田さんと田中さんを設定してみます。

対象のカラムの詳細を開き、Behaviorの中にある「Editabe?」に以下を設定します。

複数名を指定する場合は、ORが必要なので注意してください。

 

ここまでの設定で、削除と編集を限定設定を行いました。

アプリを確認してみます。

右上のゴミ箱アイコンが消え、削除操作はできないようになっています。氏名・メールアドレスも編集できないようになっています。

フィルターに関してはデフォルトでアプリ一覧画面の右上にあり、スプレッドシートの様にフィルターがそのまま残ることはないため、1つめの課題をクリアできました。

2つのスプレッドシートをまとめる

それではもう1つの課題、2つのスプレッドシートファイルを1つのアプリにまとめて管理できるようにしていきます。

こちらはチームに対し、利用する「権限マスタ」というシート名のSaaSと権限一覧が記載されているサンプルデータを利用します。

AppSheetエディタのData右にある+をクリックし、ポップアップで参照先はGoogle Sheetsを選択し、追加するスプレッドシートを選択します。

Create a new table というポップアップが出力されるので、追加したいシート名と権限を設定します。今回はRead-Onlyとします。

左メニューのDataに権限マスタが表示され、同じアプリ内に先程のスプレッドシートが追加されました。

この段階では、アプリ自体にデータは追加されていますが表示されるページはメンバーリストのみの為、表示する画面を追加していきます。

 

左メニューのViewsを選択し、PRIMARY NAVIGATION 横の + をクリックすると画面追加するポップアップが出ます。

Create a new viewでシートを選んでもいいのですが、自動的に検知して追加するシートをサジェストしてくれるのが便利です。

今回はサジェストされたものを選択しました。

View typeは、メンバーリストと同じくdeckとし、View Optionで見た目の設定を下記とします。

アプリを確認してみます。

先程作成したメンバー管理アプリの中に、別ファイルである権限マスタの画面も追加されました。

詳細画面もRead-Onlyを設定したので編集アイコンなどもありません。

必要であればメンバーリストと同様の設定をすれば、特定の方だけ編集をすることが可能になります。

 

これでもう1つの課題である2つのファイルを行き来するという作業を減らすことができました。

まとめ

これだけでは、不便な点も多少あり、参照Refの設定などを追加する必要がありそうです。

しかし、スプレッドシートの課題であった共同編集のデメリット解消と複数ファイルをまとめて管理することができました。

非エンジニアでもすぐアプリを作成できるノーコードツールを利用すれば、より便利になりますので是非試して頂きたいです。

 

アノテーション株式会社について

アノテーション株式会社は、クラスメソッド社のグループ企業として「オペレーション・エクセレンス」を担える企業を目指してチャレンジを続けています。「らしく働く、らしく生きる」のスローガンを掲げ、様々な背景をもつ多様なメンバーが自由度の高い働き方を通してお客様へサービスを提供し続けてきました。現在当社では一緒に会社を盛り上げていただけるメンバーを募集中です。少しでもご興味あれば、アノテーション株式会社WEBサイトをご覧ください。