見出し画像

【ラップタイム】タッチ操作で利用可能なマルチタイマー開発(スプレッドシート)

こんにちは。
GW期間中に何度もBBQをして、すっかり炭火の魅力に魅せられた元気マンです。
#とりあえず炭で焼いときゃ何でも美味くなる

はじめに

今回は、スプレッドシートで利用できる『マルチタイマー』を開発したのでそのことについて書きたいと思います。
#利用方法記載あり
#有料です

スプレッドシートとは何ぞやという方は、以下などネットの情報をご参照ください。簡単に説明すると、ブラウザで使えるEXCELといったところでしょうか。ブラウザで使えるので、複数人や複数端末上で同時編集ができるのが大きなメリットになります。
#あと無料で利用できる点もメリット

この『マルチタイマー』でできることは以下の3点です。

  • 1つの画面上で複数人のタイム計測を同時に実行

  • タブレットからのタッチ操作によるタイム計測

  • 計測したタイムによる順位が随時更新表示

デモ

中島さん、加藤さん、山本さんの2本目のタイム計測を同時に行っている場面のデモになります。その他のメンバーはすでに2本のタイム計測を終えており、その内のベストタイム順で、画面右側に表示されています。
操作手順は以下になります。

  1. スタート時にE列目の「S」ボタンを押す。

  2. ゴール時にF列目の「F」ボタンを押す。

これによって自動的にタイムが登録されて、2本中のベストタイムに応じて画面右側に、順位とともに名前が表示されるシステムになります。
#使いやすさ重視のシンプル設計

開発した理由

自分の叔父は「ダートトライアル」という整備されていない山道を走る車のレースの実況者として活躍しています。そんな叔父から「一人で複数台のタイム計測をしながら実況するというスーパーハードワークを何とか楽にしてくれ」という依頼を受けて作成しました。
#身内のデジタルトランスフォーメーション推進係
#他にも用途のアイディア募集中
#ダートラ

ダートトライアルについては以下の映像をご参照ください
なかなかの迫力ですΣ(・□・;)

開発の工夫点

「はじめに」にも記しましたが、今回の『マルチタイマー』は以下の3つの要件を満たす必要がありました。
①1つの画面上で複数人のタイム計測を同時に実行
②タブレットからのタッチ操作によるタイム計測
③計測したタイムによる順位が随時更新表示

①と②と③を満たすようなアプリを探しましたが、Google Play にも、Apps Store上にも存在していませんでしたので、作ることにしました。

そこで目を付けたツールのが、スプレッドシート。
③の順位表示はスプレッドシートの関数を利用することで実現できます。さらにモニターにもスプレッドシートを表示しておけば、実況中にはそのモニターだけを確認すれば良いわけです。
#ストップウォッチ用のタブレッド
#実況用のモニター
#どちらも同じスプレッドシート

続いての課題は①と②をどうやってスプレッドシートで実現するか。
この点はGoogle Apps Script (GAS)にタイマー関数を実装することで実現させました。

タイマー関数のトリガーの設定方法についてですが、始めは以下の記事を参考にして、スプレッドシート上に図形のクリックをトリガーとしました。

しかし、スプレッドシート上の図形に割り当てられたGAS関数はタブレットでタッチしても動作しないという致命的な欠点が発覚。

ここで数時間ほど頭を悩ませましたが、チェックボックスのオン操作をGAS関数のトリガーとして設定することで、無事解決しました。

マルチタイマーを使いたい!!

ここまで読んでいただいて『マルチタイマーを使いたい』と思われた方へ。
以降は有料記事になります。
マルチタイマーを使いたいという方はコメントください。
#需要があるか分からないので 、コメントがあり次第対応
#記事有料化の試み

以上になります、最後まで読んでいただきありがとうございました。
またお会いしましょう!


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