- ベストアンサー
【Excel】時間計算について
Excel2003を使用しています。 残業時間の計算について、下記のような場合、F2とG2には、どのような数式を入力すればいいでしょうか? 22時以降は深夜残業となりますので、終了時刻が22時を過ぎた場合は、その部分の時間をG列の深夜残業に表示し、22時まではF列の残業に表示させたいのです。表示形式は、C列とE列は『時刻』、F列とG列は『h"時間"mm"分"』になっています。 C列 E列 F列 G列 1 開始時刻 終了時刻 残業 深夜残業 2 17時30分 23時30分 4時間30分 1時間30分 IFで条件分岐して入力してみたり、過去の質問も検索してみましたが、思うように表示させることができませんでしたので、質問させていただきました。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ご質問例に対しての一例ですので、実際の残業時間・深夜時間の定義を考慮して下さい。 F2セルは、=IF(E2>="22:00"*1,"22:00"-C2,E2-C2) G2セルは、=IF(E2>="22:00"*1,E2-"22:00","") 因みに24時以降の時刻入力は、24:00、25:00…と入力される事としています。
その他の回答 (2)
- zap35
- ベストアンサー率44% (1383/3079)
質問の例に限定して回答していいなら、F2セルは =MIN(E2,"22:00")-MIN(C2,"22:00") G2セルは =MAX(E2,"22:00")-MAX(C2,"22:00") でも可能です。 でも実際にはもう少し工夫がいるかもしれません
お礼
回答ありがとうございます。 教えていただいた数式でできました。 今回の場合は、こちらの方法でも対応できそうです。 ありがとうございました。
- shinkun0114
- ベストアンサー率44% (1553/3474)
F2セル =IF(E2>22/24,4.5/24,E2-C2) G2セル =IF(E2<22/24,0,E2-22/24) これでどうでしょう? 時間のシリアル値は1日=24時間を1と考えていますので、時間(hour)に直すときは 24で割ってやればOKです。 お試しください。
お礼
回答ありがとうございます。 教えていただいた数式でできました。 IFの条件部分で、つまづいていましたが、24で割ればOKだったのですね。勉強になりました。 ありがとうございました。
お礼
回答ありがとうございます。 今回は、示していただいた例で、対応できそうです。 IFの条件部分で、つまづいていたのですが、 "22:00"*1 でよかったのですね。参考になりました。 ありがとうございました。