- ベストアンサー
関数を教えて下さい
エクセルで勤務日報を作成しております。 その中で、深夜割増を時間帯別で働いた時間を表示させたいと思っております。 始業 終業 割増1 割増2 割増3 22:00-0:00 0:00-3:00 3:00-5:00 このように表が決められていたとします。 そして、始業時間と終業時間を入力すると、割増部分が下記のように表示するようにしたいのです。 始業 終業 割増1 割増2 割増3 22:00-0:00 0:00-3:00 3:00-5:00 21:00 6:00 2:00 3:00 2:00 わかりずらい説明かもしれませんので何かあれば質問していただければ と思います。 宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
A3に始業時刻、B3に終業時刻を「hh:mm」の形式で入力する物とします。 このままですと計算しづらいので、G3:H3を作業用セルとして、入力した時刻を「時」に変換します。 G3 =(A3+(A3<5/24))*24 ←始業時刻が0~4時台の場合は24~28時とする H3 =(B3+(B3<10/24))*24 ←終業時刻が0~9時台の場合24~33時とする あとは、C3:E3の表示形式を時刻にして、以下の式を入れて見てください C3 =(IF(OR(G3>24,H3<22),0,IF(H3>24,24,H3)-IF(G3<22,22,G3)))/24 D3 =(IF(OR(G3>27,H3<24),0,IF(H3>27,27,H3)-IF(G3<24,24,G3)))/24 E3 =(IF(OR(G3>29,H3<27),0,IF(H3>29,29,H3)-IF(G3<27,27,G3)))/24
その他の回答 (1)
- hige_082
- ベストアンサー率50% (379/747)
A列:始業 B列:終業 C列:割増1 D列:割増2 E列:割増3 として C3=IF(C3="","",IF(IF(B3<C3,C3,C3+1)*24>22,IF(IF(B3<C3,C3,C3+1)*24-22>2,2,IF(B3<C3,C3,C3+1)*24-22)/24,"")) D3=IF(IF(B3<C3,C3,C3+1)*24>24,IF(IF(B3<C3,C3,C3+1)*24-24>3,3,IF(B3<C3,C3,C3+1)*24-24)/24,"") E3=IF(IF(B3<C3,C3,C3+1)*24-24>3,IF(IF(B3<C3,C3,C3+1)*24-27>2,2,IF(B3<C3,C3,C3+1)*24-27)/24,"") では如何でしょう
お礼
ご回答ありがとうございました。 お礼が遅くなり申し訳ありません。 当方の説明不足で、希望していたのと若干違いましたが、 色々と計算式の勉強になりました。
お礼
ご回答ありがとうございます。お礼が遅くなり申し訳ありません。 mt2008さんの計算式で完全に問題が解決しました。 これで、月の締めに行っていた時間外集計の作業がかなり楽になります。 ありがとうございました。