エクセルでは、表示形式が時間だとしても普通に計算をすることができます。
5:30と4:20を足し算したり、22:30から4:40を引き算したりということができるということです。
この記事ではそのようなエクセルの時間計算方法(足し算・引き算)について、具体的に解説しています。
【関連記事】【表示方法や関数などまとめ】エクセルで時間を扱おう!
エクセルで時間を足し算する方法
エクセルで時間を足し算するのは、方法としては通常の足し算とそれほど変わりありません。
プラスマーク(+)を使えば普通に足し算することができます。具体的に見ていきましょう。
時間を足し算する基本の方法
A1セルに4時50分、A2セルに5時30分という時間が入力されています。
A3セルに足し算の数式を作ると、以下のようになります。
普通に足し算ができることが分かりますね。
しかし、下記のように複数の時間を足し算していくと結果がおかしいことに気づきます。
エクセルのデフォルトの表示形式だと、24時間で表示がリセットされてしまうことが原因です。24時間以上の時間表示をする手順について解説します。
24時間以上の時間を表示する
下記の手順で24時間以上の時間表示ができるようにしましょう。
- 右クリック→セルの書式設定
- 「ユーザー定義」の「種類」に[h]:mm:ssを指定する。
手順1:右クリック→セルの書式設定
時間表示を変更したいセルを右クリックし、「セルの書式設定」をクリックします。
手順2:「ユーザー定義」の「種類」に[h]:mm:ssを指定する
[h]:mm:ssを指定することで24時間以上の時間表示ができます。
[h]が時間、mmが分、ssが秒を表すので、時間と分だけで良い場合は[h]:mmとしましょう。
エクセルで時間を引き算する方法
続いて、時間を引き算する方法です。引き算も特に難しいことはありません。
例えば、A1セルに22時30分、A2セルに8時50分という時間が入力されているとします。
A3セルに引き算の数式を作ると、以下のようになります。2つの時間の差である13時間40分が表示されています。
しかし引き算の場合、結果がマイナスとなる際に問題が発生します。下記のように、8時50分から22時30分を引き算しようとすると、結果がうまく表示されません。
これは、時間がマイナスのときに表示できるような表示形式になっていないことが原因です。
マイナスになっている時点で表示されないので、一度プラスの値にしてから(つまり絶対値をとる)マイナスの表示形式にする必要があります。
少しややこしいですが、下記の手順となります。
- ABS関数で絶対値をとる
- TEXT関数でマイナスの表示形式に変換する
具体的に手順を説明します。
手順1:ABS関数で絶対値をとる
ABS関数は、引数で指定した値の絶対値を返してくれる関数です。まずはこの関数を使って、プラスの値を表示させましょう。
手順2:TEXT関数でマイナスの表示形式に変換する
TEXT関数は、
=TEXT(書式設定する値, "適用する表示形式コード")
という形で、表示形式を変更することができます。
ABS関数で絶対値にした数値に対して、この関数を使ってマイナスの値を表示します。
具体的には下記のような数式となります。
表示形式を、-h:mmとすることでマイナスの「時間:分」を表示することができます。
引き算の結果がプラスのときとマイナスのときで表示形式を分ける
解説した方法だと、常にマイナスの値を表示することになります。
値がプラスかマイナスかで場合分けをして、
- 時間がプラスの値であればそのまま表示する
- 時間がマイナスの値であればマイナスをつけて表示する
という方法について解説します。
先ほどと同じ例で考えた場合、
- A1-A2の結果がプラスの場合は"h:mm"で表示する
- A1-A2の結果がマイナスの場合は"-h:mm"で表示する
というように場合分けできればよいですよね。
IF関数を使うことで、この場合分けを実現することができます。
数式の結果からお伝えすると、
=TEXT(ABS(A1-A2),IF(A1-A2>=0,"h:mm","-h:mm"))
という数式になります。
構造としては下記のようになっています。
引き算の結果がマイナスになる場合、プラスになる場合それぞれについて適応した結果は下記のようになります。
この記事の内容は下記の動画で解説していますので、参考にしてみてください!