時間の引き算をするとマイナスの結果が####になる場合の関数

時間の引き算をすると結果がマイナスになる場合もあります。

その時に値が「######」となり、正しく表示されません。

例えば下図のように、D列の終了実績時刻からC列の終了予定時刻を引いた結果をE列に返すとき、

D>Cの数値ならば時刻の表示ができますが、

D<Cの数値だと結果がマイナスになるため値が表示できません。

20180414f

その場合は以下のような関数を使うと結果を表示することができます。




TEXT関数とABS関数を使っていきます。

=TEXT(ABS(D4-C4),IF(D4<C4,"-h:mm","h:mm"))

ABSは数値から符号 (+、-) を除いた数の大きさを表示することができます。
そのため結果がマイナスだとしても絶対値で表示することができます。

TEXTではマイナスの結果であってもABSによって絶対値の表示になっているものの表示を変更します。
IFでD4<C4だった場合は「"-h:mm"」と表示、D4>C4だった場合は「"h:mm"」と表示するように指定します。

結果は下図のように表示できました。

20180414g

TEXT関数によって文字列の扱いになってますので値が左寄せになります。
適宜右寄せに修正するなどしてください。