いきなり答える備忘録

Google Workspace(旧G Suite)・Microsoft 365・LibreOfficeなどに関するメモ

(Gスプレッドシート)マイナスの時間の入力・計算・表示

 Googleスプレッドシートでのマイナスの時間(時刻)の扱いについてです。

  • Googleスプレッドシートではマイナスの時間(時刻)を入力することができます。計算もできます。
  • 計算結果(加減算やSUM関数など)にマイナスの符号が反映されない場合があるので、そのときは「[h]:mm:ss」などの書式を適用します。

手順

f:id:accs2014:20220413181040p:plain:right:w450

 画像のように、マイナスの時刻(時間)を直接入力することができます。
 ただし、なぜか「.000」というミリ秒部分が自動的に追加されます。


f:id:accs2014:20220413181043p:plain:right:w450

 SUM関数で合計を求めた結果です。
 結果はマイナスで表示されており値に間違いはありません。
 Googleスプレッドシートはマイナスの値もシリアル値として日付時刻に変換できる(こちらの記事でも少し触れています)ので、その恩恵といえます。


f:id:accs2014:20220413181046p:plain:right:w450

 しかし計算結果の場合は必ずマイナスになってくれるわけではないようです。
 どうも最初(先頭)の値の影響を受けるらしく、この場合は「23:10:00」となっています。0:00:00の50分前なので意味は理解できますが「-0:50:00」とはなってくれません。


f:id:accs2014:20220413181051p:plain:right:w450

 この場合は手動で表示形式を変更します。
 ここでは「[h]:mm:ss」とします。24時間以上の時間を表示する際に用いる形式ですが、マイナスの時間にも適用できるというわけです。


f:id:accs2014:20220413181055p:plain:right:w450

 結果はこうなります。
 マイナスの表示を得ることができました。

 入力を繰り返すようなシートの場合は、先にこの設定をやっておいた方がよいでしょう。

 なお、HOUR/MINUTE/SECOND関数にマイナスの時間(時刻)を渡すとエラーになるなど、活用の上では制約があります。また、TIME関数にマイナスの引数を渡すとエラーになるので、これによりマイナスの時刻を生成することもできません。