電子書籍の厳選無料作品が豊富!

現状は、タイムカードで出勤時間と退勤時間を打刻しています。
定時間は8時間でそれ以上の勤務は残業となります。
ただし残業する場合と定時間に満たない場合があります。
定時間内勤務時間と残業時間それぞれの合計を出したいですが、
定時間の8時間に満たない場合に、下記のような不具合がでます。

たとえば、時刻表記は 7:00 という風にするとして
1 A     B     C       D        E     
2 出勤時間 退勤時間  総合勤務時間  定時間内勤務時間 残業時間
3 7:00   16:30   8:30     8:00      0:30
4 7:00   12:00   5:00     ??      ######

問題はD4とE4です。
定時間の8時間に満たない人の残業時間と定時間内勤務時間を
どのようにすればいいでしょうか?
D3は、8時間を満たす人なのでC3-E3で8:00とだせました。
しかしD4をC4-E4として計算すると、8:00と出てきてしまいます。

たとえば残業時間を#####ではなく
TEXTの関数を使い-3:00と表記するようにしても
うまくいきません。
C列の総合勤務時間が8時間に満たない人の勤務時間を
Dの列に出すにはどのようにするのでしょうか??

いろいろと試しましたが解決できませんでした。
どなたか教えてください・・・。どうかよろしくお願いいたします。

A 回答 (3件)

3行目、単純に=B3-A3とすると、9:30と出てくるんですが。


とりあえず9:30でいい、と仮定するなら、

A4:出勤時刻を入力
B4:退社時刻を入力
C4:=B4-A4・・・これで勤務時間が出てきます。
D4:=IF(C4<TIME(8,0,0),C4,TIME(8,0,0))
・・・8時間以上の勤務の場合は8時間、未満の場合はC4の時間が出てきます。
E4:=C4-D4・・・残業時間が出てきます。

昼休みを反映させるなら、C4をいじってください。
    • good
    • 0
この回答へのお礼

解決できました。
返事が遅れてしまいすみませんでした。
どうもありがとうございます!!

お礼日時:2008/12/01 08:49

#2です。

ごめんなさい。

下の回答で、C4,D4,E4は、「書式」「セル」で「時刻」を指定し
なおさないと、0.33333とかのわけの分からない数字が出てきます。

これはExcelの時間の計算が、1日を"1"とした数値で処理されて
いるために、表示形式が「標準」のままだと、「時間」の1/24の
数値が表示されてしまうためです。
    • good
    • 0

一番簡単なのは、D列を =min(C3,"8:00") としてE列を =C3-D3 とす


ることですかね。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!