
AppSheetとは何か、このコースでどのようなアプリを作るのかを解説します。
どのようにアプリを開発していくのか15倍速で再現してみます。
このコースのレジュメはDynalistというアプリで 作っています。
そのDynalistの使い方を簡単に紹介します。
アップシートを使ったアプリ開発のメリットデメリットを解説します。
そもそもアップシートとは一体何なのか?
何ができるのか
お金がかかるのか
どのようにアプリ開発を進めていくのか
アプリの構造はどうなっているのか
といったことを解説いたします。
このコースで何が学べるかをお話しいたします。
このコースでどのような機能を使ってアプリを開発していくのか、どのような流れで開発を進めていくのかを解説いたします。
Googleスプレッドシートに大樹のデータをインポートします。
このデータを使ってアップシート開発を進めていきます。
なお、このデータは私が7年間かけて実際に計測したリアルなデータです。
まずはアップシートのアカウントを作りましょう。
無料で作ることができます。
アップシートの開発画面は全て英語です。
しかしGoogle翻訳を使えば問題なく開発できるようになります。
早速アプリを作ってみましょう。
ほぼマウスをクリックするだけで開発をスタートできます。
アプリ開発画面の見方を解説いたします。
KEYとは行を一意に特定するための値で、データベースには必須の概念です。
REQUIREは入力必須項目の設定です。設定しなくてもアプリを使えますが、設定することで適切にデータ管理できるようになります。
データ型はアプリに「このデータはどういうデータ」を教えてアプリの動きを制御するための設定です。
適切に設定しないと希望どおりの動きにならないのでしっかり理解しておきましょう。
ラベルとはグラフ表示などユーザーが目にする部分で表示される目印のようなものです。
適切に設定することで使い勝手が良くなります。
+-ボタンを押したときの増減値
入力できる最大・最小値の設定
初期値の設定
小数点何桁まで表示するか?
を設定します。
新規データを追加したときに「今日の日付」を初期値にしてみます。
入力の一手間を省けるようになるので使い勝手が良くなります。
_RowNumbeとは「何行目」を表す値です。
この値は使えば一つ前の体重を取得するなど、応用が効くようになります。
グーグルスプレッドシートの表を適切な形にしないとAppSeetとうまく連携できません。
適した形、適さない形を学びましょう。
UI開発はメインディッシュです。
「アプリ作ってるぜ」という感じになります。
表形式で全データを閲覧できる画面を作ります。
データの並び順、列幅などを設定します。
全期間のデータでグラフを作ります。マウスポチポチだけで作れます。
驚くほど簡単です。
ダッシュボードとは2つのUIを同時に表示する画面です。
これもマウスポチポチだけでできます。
カレンダービューではその日に書いたメモを表示することができます。
_RowNumberとMAX関数を使って最新30データのみを抜き出す式をつくります。
理屈がわかれば簡単です。
スライスしたデータをどのように表示するのかといった設定を行います。
グラフを作るときにスライスしたデータを指定すればそのデータでグラフを作れます。
ここまで作ってきたアプリをスマホにインストールする手順を解説します
スマホにインストールするときにつまずきがちなポイントをいくつか紹介します
テーマカラー
アプリのアイコン
ダークモード
読み込み画面
の設定をしてみましょう
フォント設定
シェアボタンの表示/非表示
入力フォームの表示設定
テーブルビューの表示設定
といったアプリ全体に変わる設定をしてみましょう。
UIを日本語化してみましょう。
アップシートにはローカライズという項目が用意されており誰でも簡単に日本語化することができます。
仮想列とはどのような機能なのか? 何をするために使うのか? を解説いたします
PMIを表示する仮想列を作り一覧画面に表示させましょう
まずはテキスト関数の使い方から解説します。
テキスト関数を使って日付表記を少し変更してみましょう。
まずは英語で曜日を表記させてみます。
英語表記であればテキスト関数だけで実装することができます。
日本語で曜日を表記するためには3つの関数を組み合わせる必要があります。
まずは 曜日を数値で返す関数、WEEKDAY関数の使い方を解説します。
WEEKDAY関数、INDEX関数、LIST関数を使って 日本語で曜日を表記させます。
少し複雑かもしれませんが、 関数を一つ一つ分解して理解し組み合わせれば理解が進むと思います。
ラベル設定するとグラフなどに曜日が併記された日付を表示することができてとても便利になります。
Enumを使えばあらかじめ用意した選択肢からデータを選んで入力するという操作ができます。
この機能を使えば表記揺れを防いだり、入力の手間を省けたりと様々なメリットがあります。
グループ化機能を使えば月ごとの集計を行います。
月ごとに集計するために仮想列を使います。
体重と体脂肪率から脂肪の重量を計算して表示してみます。ここまでの知識を使えば簡単に実装できます。
式をテストしたときに表示される値とアプリで実際に表示される値が違うことがあります。
前回使ったデシマル関数も表記が違う場合に該当します。
ルックアップ関数はExcelのLookup関数とよく似ています。
この関数を使えば条件に合致したデータを取り出すことができます。
実際にルックアップ関数をアップシートに入力し希望する値を取得できているかテストしてみます。
AppSheetのIF関数はExcelのIF関数とよく似ています。
この関数を使って記録初日は前日比を0とし、それ以外は前日比を表示するようにします。
※※ 動画撮影時からAppSheetの画面構成がアップデートされているため、実際の画面と講義の画面が異なります。ご注意ください ※※
スマホやPCで使えるアプリはプロのITエンジニアしか作れないと考えていませんか?
一昔前のアプリ開発はまさにプロの領域であり、完成まで富士山よりも高いハードルがあったのです。
ところが、現代は「とりあえずエクセル使えます」という非IT系でもアプリを作れる時代になりました。
最近話題の「No Code開発」というやつです。
ノーコード = コード不要 = プログラミング不要!! ということです。
このコースで扱うGoogle AppSheetは業務利用を想定して作られており、完成するアプリはシンプルな見た目ながら高機能です。
いくらかかるの? という疑問が湧くかもですが、無料で利用できます。
このコースで扱う機能の一例を挙げると
スマホ / タブレット/ PCで使えるアプリを作れます
グーグルスプレッドシート(以下 GS)と連携し、データの閲覧・追加・編集・削除ができます
GSにはない列をAppSheetアプリ内で演算して表示
データをグループ化し集計 (月ごと平均など)
データをグラフ表示
値に応じて絵文字を表示
入力したデータをカレンダーに表示
特定期間で絞り込んでデータ表示
スマホで写真を撮影し、アップロード
アップロードした写真や画像をサムネイル表示
説明文を日本語化
データの並び順を変える
アプリのアイコンを設定する
アプリをダークモードにする
アプリのテーマカラーを設定する
などなど他にも多くの機能があります。
このコースでは上記のような機能を使って、レコーディングダイエットアプリをテーマに開発方法を解説します。
なぜレコーディングダイエットなのか? を少しお話させてください。
実はこのレコーディングダイエットアプリを、作るのに7年かかっています。
といってもアップシートを7年間いじっていたわけではありません。
紙のメモ帳に体重を記録していた時代から含めると7年の歳月をかけてレコーディングダイエットをしていた、という意味です。
その間の試行錯誤・アイデアがこのレコーディングダイエットアプリに詰め込まれています。
私は7年前(2014年)、今より20数Kg以上 太っていました。一人暮らしで暴飲暴食した結果です。
これはマズイ、と試行錯誤した結果 行き着いたのがレコーディングダイエット。
はじめは紙に日付と体重を記録していましたがデータをPCやスマホで入力、閲覧したいと思いグーグルスプレッドシートで入力することにしました。なんせクラウドですから。
グラフも作ったりして右肩下がりの体重推移をながめて楽しんでいました。
スプレッドシートだけを使っていた2014年当時、時代の最先端だぜ!! とひとりごちっていましたが、いかんせん入力が面倒。
直接スプレッドシートに打ち込んでいましたからね。
次に目をつけたのがGoogle FormsというWEBアプリで、入力がかなり楽になりました。
しかしこのアプリ、標準機能ではあまり細かい制御ができません。
例えば、 日付の入力を間違えて後から気がつく。
(おっちょこちょいなのでそういうことがよくありました)
そのでGoogle App Scriptを使って、つまりプログラミングして対処していました。
が、これはこれで面倒。
なぜならレコーディングダイエットを改良すべく、スプレッドシートの列を入れ替えたり、追加したり色々やるたびにプログラムにも修正が必要になります。
超面倒です。(個人的にはプログラミングが好きなのでまぁいいかと思いながらやっていましたが)
そんなとき新しいWEBサービスに出会いました。
それがAppSheetです。
開発画面は英語でチンプンカンプン。
詳しく解説している日本語サイトもなく最初は「ふーん。こんなのあるのね」くらいでスルーしていました。
ところが、仕事の都合でPC/スマホ両方で使える業務アプリを探す必要が出てきました。
ここでAppSheetを思い出し詳しく調べてみることに。
なかなか使えそうじゃないか。試しに自分で使うレコーディングダイエットアプリを作ることに。
結果、レコーディングダイエットの利便性が飛躍的に向上しました。
ここまで7年。
アプリ開発の過程で得た知識・経験をシェアしたいと思いこのコースをつくりました。
アプリを作るにあたりゼロからデータを蓄積しながら作っていってもよいのですが、少し面白みに欠けます。
そこで、私が7年間記録してきた生データを使いながら開発できるようにしてあります。この方がグラフを作ったり設定を変更したりした時に臨場感が出てきます。
(おっさんの生データなんか嬉しくないよ、いう意見もあると思いますがw)
AppSheetの機能説明だけではなく、データ管理方法や開発の流れ、アプリを使いやすくするアイデアの実装など、私が時間をかけて学んできたエッセンスもお話しいたます。
AppSheetによるノーコード開発を一緒に学んでみませんか?