見出し画像

【GlideApps】ランダム表示のある日めくりカレンダー付き名言集を作ってみた

#NoCode

ノーコードツール学習強化中のHalaccaせつきです。
お仕事の傍ら進めていた、GlideApps(https://www.glideapps.com/)での試作品がようやっと完成しましたー!(パチパチ)
こういうの、みんなどうやって題材探してるの??もう題材がなくて最初はそこから躓いたよね、、、笑

早速ですが、作ったものがコチラ
https://vivaquote.glideapp.io/

画像1

関西ジャニーズJr.のAぇ!group リーダー 小島健氏による名言を集めて付番し、一覧にしたものです。(ヲタ垢で使ってる名前なので一応伏せました笑 完全身バレじゃん…)
TVやラジオでの発言、紙媒体、もしかしたら公演中の発言もあったかもしれない、約200件に及ぶ彼の独特の発言を記録したもの。メンバーやファンの間では「小島の名言そのnn ~」として親しまれているのですが、

なんせまぁ資料が。揃っていない。

ネット上にまとめてくださっている方もいらっしゃるのですが、データベース化されていないために目で追って確認していくしかない。

ひえぇ、不効率ー

見たいときにすぐ見たい。
欠番はわかったときにすぐ埋めたい。

(何でしょうね、オタクの性なんでしょうかね…)

ということで、簡易データベース化してアプリ様に可視化したいなぁと。

あら、覚えたかったGlideにぴったりじゃないの。

やっと出来上がったので披露させてください…

【躓きポイント①】
GlideとスプレッドシートでのDataEdit

データの整備ができた!リレーションも出来た!さぁ関数だ!
スプレッドシート上の関数をGlide側でどれくらい理解し出力してくれるのか?をテストするために、ランダムで名言を表示する「日めくりカレンダー」の機能をつけました。

1.ランダムで名言番号を取得したい

【したかったこと】
・ランダム変数値を取得
・取得した変数の行番号の名言の値をINDEXで表示させたい

名言にはそれぞれ付番(そのnn)がされており、それをランダムで取得し表示したい。しかし付番されたものは番号が飛び飛び…。空白行の行番号を返した場合には「名言がありません」などのメッセージを表示させたい。
なので通し番号を整備し、名言がないものは空白行に、あるものはそこに名言を追加していきます。それをランダム関数で取得しようとしたのですが、取得した番号が付番した番号と合致しない。

最初はMatch関数で完全一致させるやり方で行っていましたが、それではFalseの値を返したときにメッセージが表示されない。→Vlookupで検索したものと一致するかを使用するとTrue or Falseの値が返される(ここに気づくまでにちょっと時間がかかった)ため、Vlookupで検索し、Trueのときは名言を、Falseのときは残念でしたメッセージを表示させる条件分を追加。

はー、できた!

と思いました。。。

条件文の文言を変えようと、Glide側のデータエディターから文言を修正したつもりでしたが、Glideに修正したシートを読み込ませたら挙動しなくなった…?

実はこれ、違う式で違う場所に計算した際にハマって、結局原因がわからないまま作り直したことがあります。

計算式の入ったシートの内容は、リレーションなどGlide側の設定以外はスプレッドシートで直したほうがいい。

原因は、Glide側のデータエディターを使用すると、該当カラムから式が消えて文字列情報だけを上書きしてしまうというもの。当然、スプレッドシート側でも計算式が残らず文字列情報だけが、、、

【躓きポイント②】
スプレッドシート関数の処理の走るタイミング

さぁ出来た!式も直した!と意気揚々で、日付が変わった頃にるんるんで立ち上げたら、、、

TODAY関数が、、、全く働いていない

キャッシュも消した、立ち上げ直した、どうして…
と思ったのですが、Glideを立ち上げてスプレッドシートを参照しに行っただけではランダム関数もTODAY関数も更新されない様子。あくまで参照のみで、なにか処理を行うわけではないため、スプレッドシートに対してアクションがない限り更新されない、、、?

そこで、データコンポーネントを使用すれば「日めくりカレンダー」の体も保てるし処理も走らせる事ができるのでは?と考えた。

結果大当たり。バンザイ生きててよかった。
カレンダーから日付を変更した後、タイムラグはあるものの、スプレッドシートに更新がかかった状態になり、日付変更によって名言のランダム表示が可能に!

【データベースとしての機能も欲しい】

前述の通り、
見たいときにすぐ見たい。
欠番はわかったときにすぐ埋めたい。
これって結構大事。あとになるとやらなくなる。
ということで、付番や名言など、不明点があるものはコンポーネントをテキストエントリーにして、即時入力できるように。これでWikiのような、みんなで補おうぜの機能も兼ね備えることが出来ました!

以上、簡単な機能しかありませんが

【まとめ】

スプレッドシート使いこなせたら何でもできるんじゃね?

実はこの他にも、500行(無料版上限)ギリギリのデータを持った店舗データベースのようなものも作ったのですが、そちらはリレーションさえ覚えれば、というところでした。しかし名言集ではデータの活用もそうですがあくまでスプレッドシート関数との関係を調べたかったため、このような形になっています。

これからもGlideたくさん触って極める!がんばろ!

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