例えば、EXCELで「タイムアタック」や「経過時間」を計算したいと思った時に使える方法です。
タイムトライアルの計算をしたい…が。
例えば、最初は「2分30秒」掛かったものが「1分12秒」で終わった場合は「1分18秒」早くなったということになります。これをEXCELで計算しようと思った時。
例えば1回目のセルに2:30、2回目のセルに1:12秒、と入力したとします。
この時、1回目から2回目を引くと、1:18と表示されます。
一見、これで良さそう…な気もしますが、注意が必要です。
EXCELの時間表示はhh:mm:ss
EXCELの時間の表示は「hh:mm:ss」が標準になっています。つまり、今回の場合は、1回目は「2分30秒」ではなく「2時間30分」ということになります。
ユーザー定義で「mm:ss」に変更してみます。
そうすると、表記が「30:00」となりました。つまり、この場合は30分ということになります。
見た目上は良さそうですが、実際の値は違った状態になってしまいます。
mm:ssに変更しておく
これを防ぐためには、予めユーザー定義で「mm:ss」に変更しておく方法がひとつです。
[rml_read_more]
2分30秒としたい場合は、「0:02:30」となります。
これで、見た目は最初と同じに見えますが、○分○秒という形式になりました!
差分のマイナスに注意する
1回目の方が数値が大きい場合は大丈夫ですが、数値が小さい場合は注意が必要です。
1回目-2回目の差がマイナスになる場合は、シリアル値がマイナスとなり時間表記が出来なくなります。
この場合はABS(アブソリュート)関数でカバーします。
ABS(アブソリュート)関数は、数値の正負に関係なく絶対値を求めることができる関数です。計算結果がマイナスになってもプラスの結果を返してくれます。
ただ、この方法の場合は「2回目の方が遅くなった場合」も「2回目の方が早くなった場合」も正の数値が返ってくるので、何らかの処理(遅くなりましたと表示する?)などを、if文などを使うなどで工夫が必要かもしれません。このあたりはまた、別の記事にて。
まとめ
このmm:ssの表示に変えることで、EXCELで経過時間やタイムアタックの計測を秒単位で表示して計算することができます。
ご参考ください😃