Googleスプレッドシートでのマイナスの時間(時刻)の扱いについてです。
- Googleスプレッドシートではマイナスの時間(時刻)を入力することができます。計算もできます。
- 計算結果(加減算やSUM関数など)にマイナスの符号が反映されない場合があるので、そのときは「[h]:mm:ss」などの書式を適用します。
手順
画像のように、マイナスの時刻(時間)を直接入力することができます。
ただし、なぜか「.000」というミリ秒部分が自動的に追加されます。
SUM関数で合計を求めた結果です。
結果はマイナスで表示されており値に間違いはありません。
Googleスプレッドシートはマイナスの値もシリアル値として日付時刻に変換できる(こちらの記事でも少し触れています)ので、その恩恵といえます。
しかし計算結果の場合は必ずマイナスになってくれるわけではないようです。
どうも最初(先頭)の値の影響を受けるらしく、この場合は「23:10:00」となっています。0:00:00の50分前なので意味は理解できますが「-0:50:00」とはなってくれません。
この場合は手動で表示形式を変更します。
ここでは「[h]:mm:ss」とします。24時間以上の時間を表示する際に用いる形式ですが、マイナスの時間にも適用できるというわけです。
結果はこうなります。
マイナスの表示を得ることができました。
入力を繰り返すようなシートの場合は、先にこの設定をやっておいた方がよいでしょう。
なお、HOUR/MINUTE/SECOND関数にマイナスの時間(時刻)を渡すとエラーになるなど、活用の上では制約があります。また、TIME関数にマイナスの引数を渡すとエラーになるので、これによりマイナスの時刻を生成することもできません。