プロが教えるわが家の防犯対策術!

早朝の早い段階から勤務しています。
13時以降勤務時のみに昼休憩の1時間を引きたいのです。
計算方法を教えてください。
なお、退勤時刻に入力した段階で勤務時間を計算しています。
F欄に次の式 =IF(COUNT(E5)=1,(E5-B5),"")→休憩なしの方はこの計算

ちなみにほとんどの方は12時までに勤務終了です。
B欄に出勤時刻、E欄に退勤時刻、F欄に勤務時間を記載したいのです。

質問者からの補足コメント

  • つらい・・・

    解答ありがとうございます。
    書き方が変で申し訳ありません。
    13時以降の出勤ではなく、早朝からの引き続きの勤務になります。
    他の方は、昼までに退勤しますが、一部が14時以降まで残っているのです。
    以上、よろしくお願いいたします。

    No.1の回答に寄せられた補足コメントです。 補足日時:2019/04/07 18:28
  • へこむわー

    コメントありがとうございます。
    最初の式(=IF(COUNT(E6)=1,(E6-B6),""))に追加で計算したいのです。
    退勤時間に入力した時点で、早く帰る人は昼休憩なし、13時以降まで仕事している人は休憩時間を引く。
    以上のような式を作りたいと思っています。
    よろしくお願いいたします。

    No.2の回答に寄せられた補足コメントです。 補足日時:2019/04/07 18:47

A 回答 (4件)

判定基準が13時と14時ではっきりしませんが、ここでは13時ということで回答します。



13時以降まで仕事をしている人を判断するのは、E列の退勤時間ということでよろしいのですね?

=IF(COUNT(E5)=1,(E5-B5),"")-IF(E5>=13/24,1/24,0)

書かれている条件だと、こういう式でできると思います。
後ろのマイナスのIF文は退勤13時以降であれば1時間を引く、という式です。

この式だけだと多分問題があると思うんですね。
出勤時間 5:00 として、
退勤時間 12:00 のとき 勤務時間 7:00 (=12:00-5:00)
退勤時間 12:50 のとき 勤務時間 7:50 (=12:50-5:00)
退勤時間 13:00 のとき 勤務時間 7:00 (=13:00-5:00-1:00)
という計算結果になり、
13時になった途端に1時間の休憩時間が引かれてしまい、
12:50に先に帰った人が13:00に帰った人より50分多く働いたことになります。

13時以降まで残っている場合は1時間休憩を取ることを義務付けている、
上記の計算になることが周知されているのであれば、
そのままの式でも問題ないのかもしれないですが。


仮に、昼休憩が12:00~13:00としているのであれば、

=IF(COUNT(E5)=1,(E5-B5),"")-IF(E5>=13/24,1/24,IF(E5>=12/24,E5-12/24,0))

①:退勤13時以降なら1時間引く。
②:①に当てはまらず、13時以降退勤12時以降なら12時からの超過分を引く。
③:①②に当てはまらなければ(12時前の退勤ならば)何も引かない。
…といった式になります。

式中の分数は…
エクセルにおける「1」は1日に該当するので、1時間は「1/24」、
13時は「13/24」になります。
基準時間が13時、14時なのか、条件に併せて書き換えてみて下さい。

IF文は分かっておられるようなので、後は自分でも修正できると思います。
    • good
    • 0
この回答へのお礼

zongai 様
貴重な時間を差して頂き、ありがとうございます。
教えて頂いた式を参照に組み換えをし、完成させることとなりました。
午前中の仕事は、休憩をとることができずに終わると帰ってしまいます。
それが11時だったり、正午すぎたりなので②は不要になります。
昼以降に残る方は16時位まで居ますので休憩を取ります。
また、記録者がPC等に弱いため、退勤時刻の記入以後に計算できるように修正しました。
=IF(COUNT(E6)=0,"",(IF(E6>=14/24,E6-B6-1/24,E6-B6)))

お礼日時:2019/04/08 13:23

=IF(E5>=14,E5-B5-1,IF(COUNT(E5)=1,(E5-B5),""))

    • good
    • 0

=E-B+(-1*(E+1>13)



退勤時間Eが12時以降13時前の場合には、これを加算する/しないの判断はありません。
この回答への補足あり
    • good
    • 0

13時以降勤務はどこで判断するの?B5?


午後からの勤務なのに昼休憩1時間分を勤務時間から引くの?
不思議な感じもしますが…

上に書いたとおりの解釈でいいなら、
今の計算式に、出勤が13時以降であれば「1時間(=1/24日)」を引くだけ。
=IF(COUNT(E5)=1,(E5-B5),"")-IF(B5>=13/24,1/24,0)
となります。
この回答への補足あり
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています