出産前後の痔にはご注意!

勤怠表を作成してます。 実働時間を求めるのに計算式を作成しました。 =IF(D5="","",IF(TEXT(E5-D5,"h:mm")>="8:00",FLOOR(TEXT(E5-D5-"1:00","h:mm"),"0:30")*24,FLOOR(TEXT(E5-D5,"h:mm"),"0:30")*24)) これだと、10:00時間(2ケタ)になった時、休憩の1:00時間を引いてきてくれません。どうすればよいか、何方かお教え下さい。宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

 私がやるとしたら、次の様にします。



=IF(D5="","",FLOOR(E5-D5-(E5-D5>=8/24)*1/24,30/1440)*24)
    • good
    • 0

休憩時間を固定で計算されているようですが、


休憩時間も入力する形式にされてはいかがですか?
その方が計算式が簡単になりますよ。

ちなみに、私が使用している勤務表では、
作業の開始時刻、終了時刻、休憩時間、控除時間(私用外出等の勤務時間に含めない時間)の4項目を入力しています。
    • good
    • 0
この回答へのお礼

確かに、いくつかの項目別に入力して計算するようにするのが、一番理想的ですよね!

有難うございます。

お礼日時:2010/11/05 13:53

Excelの話しですよね?



E5セルとD5セルの差が8時間以上有るか否かの判断を文字列で比較しているのが原因です。↓この部分
TEXT(E5-D5,"h:mm")>="8:00"

E5セルとD5セルの差が10時間の場合、「10:00」と、「8:00」と言う文字列で大小を判断していますが、文字列ですので先頭の、1と8で比較され「10:00」の方が文字列としては小さいと判断されます。

あくまでも文字列に拘るなら、↓の様に時刻を2桁に
TEXT(E5-D5,"hh:mm")>="08:00"

私なら、文字列での判断はせずに↓の様にシリアル値で判断します
(E5-D5)>=(8/24)



Excelの話しでしたらMS Officeのカテゴリの方が回答が付き易いと思います。
    • good
    • 0
この回答へのお礼

有難うございます。

TEXT(E5-D5,"hh:mm")>="08:00" に変えてみたら出来ました。

確かに、シリアル値の方が楽で、簡単ですよね!

本当に、困っていたので、とても助かりました。

本当に、本当に、有難うございます。

お礼日時:2010/11/05 12:48

よくわからないけど、h→hhにしてみては?



=IF(D5="","",IF(TEXT(E5-D5,"hh:mm")>="08:00",FLOOR(TEXT(E5-D5-"1:00","hh:mm"),"00:30")*24,FLOOR(TEXT(E5-D5,"hh:mm"),"00:30")*24))  
    • good
    • 0
この回答へのお礼

有難うございます。

h→hhに、変えたら計算してくるようになりました。

本当に困っていたので、凄く助かりました。

回答してくださって、有難うございます。

お礼日時:2010/11/05 12:52

このQ&Aに関連する人気のQ&A

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


人気Q&Aランキング