• ベストアンサー

エクセルで時間計算

エクセル2003です。 A1のセルに開始時間を入力 B1のセルに終了時間を入力 0時から7時まで夜時間 7時から19時まで昼時間 19時から24時まで夜時間とします。 このときC1に昼時間を表示 D1に夜時間を表示させるには どうしたらよいでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

翌日の時刻を入力することがないなら、簡単な数式で表示可能です。 C1セル(昼時間) =MAX((A1<7/24)*(MIN(B1,18/24)-7/24),0)+AND(A1>7/24,A1<18/24)*(MIN(B1,18/24)-A1) D1セル(夜時間) =B1-A1-C1

toyohei
質問者

お礼

有難う御座いました。 少し修正して使用しています、実はまだ式の意味理解しないで 利用しています。

その他の回答 (3)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.4

回答No2です。 24時を超えることが無いのでしたらC1セルの式はNo2のままですが、D1セルへは次の式を入力します。 =IF(COUNT(A1:B1)=2,MAX(B1,"19:00")-MAX(A1,"19:00")+"7:00"-MIN("7:00",A1),"")

toyohei
質問者

お礼

ご教授有難う御座いました。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

B1セルには翌日になる場合には24時間をプラスした時間で入力することにします。 その場合には次のようにすればよいでしょう。 C1セルには =IF(COUNT(A1:B1)=2,MIN(B1,"19:00")-MAX(A1,"7:00"),"") D1セルには =IF(COUNT(A1:B1)=2,MAX(B1,"19:00")-MAX(A1,"19:00"),"")

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

終了時間が翌日の2時になったような場合にどのように入力しているのでしょうか? また、確認ですが開始時間と終了時間の差が24時間以上になることはないのでしょうか?

toyohei
質問者

補足

説明不足でした。 終了時間が24時を越えることはないです。 ですから差が24時間以上になることもないです。 よろしくお願いします。

関連するQ&A

専門家に質問してみよう