Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Pro : その他)
残業時間 日をまたぐ日とまたがない日が混在している場合の合計を出したいです。
投稿日時: 20/01/23 13:45:57
投稿者: EXIT

いつもお世話になっています。
 
深夜残業時間の一か月分の合計を出したいのですが、
 
       A    B      C      D
  開始時刻 終了時刻 休憩時間 残業時間
1  22:00   5:00   1:00    6:00 
2  22:00   4:00   1:00    5:00 
3  22:00   23:00         1:00
4
5
6                  36:00
 
この場合、Dに入れる計算式を
=IF((B1-A1-C1=0),"",(B1+1-A1-C1))
としています。
 
日をまたがない場合でも、この計算式で残業時間は1:00と表示されています。
しかしD6で時間を合計すると12:00となるはすが、36:00となってしまいます。
 
D3のセル書式を確認するとh:mmになっていましたので、[h]:mmに変更すると25:00となりました。
 
日をまたぐ日のみの合計ならこの計算式で大丈夫なのですが、混在している場合は合計が合いません。
 
24:00までと0:00から5:00までの時間を分けて入力するようにするか、またはDの計算式を日をまたがない場合のみ変更すれば大丈夫とは思いますが、できれば一つの計算式で対応したいと思っています。
 
その場合、Dにどのような計算式を入れればよいのでしょうか。
 
可能でしたらご教授お願いします。

回答
投稿日時: 20/01/23 14:11:09
投稿者: んなっと

A,B,C列は、深夜時間に限定しているんですね。
それなら簡単です。
 
    A   B   C   D
1 22:00  5:00 1:00 6:00
2 22:00  4:00 1:00 5:00
3 22:00 23:00    1:00
 
D1
=B1+(B1<A1)-A1-C1
下方向・↓
 
下の式の方がわかりやすいと思います。
D1
=IF(B1<A1,B1+"24:00",B1)-A1-C1
赤字部分は、
「B列の方が小さかったら、日付が変わっているので24:00をたして大きな数字にする」
という意味です。下の表のようにしているわけです。
 
    A   B   C   D
1 22:00 29:00 1:00 6:00
2 22:00 28:00 1:00 5:00
3 22:00 23:00    1:00

投稿日時: 20/01/23 14:28:23
投稿者: EXIT

んなっと様
回答ありがとうございます。
 
なるほど、そういう風に考えればいいんですね。
教えて頂いた方法で望んでいたとおりに出来ました。
 
これで効率が上がります。
ありがとうございました。