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

はじめまして
最近 エクセルを始めました初心者です。
ご教授いただければ幸いです。

エクセル表で終業時間を計算したいのですが、
昼休みの上手な削除の仕方が分かりません。


■内容
休み時間 12:00-13:00をカウントしたくありません。

いくつかサイトで調べてみましたが、記載の12行目 14行目の
式を使いました。
全ての従業員が、この休み時間内(1時間)にいれば計算できるのですが、
行7,8のように休み時間内に打刻をすると計算できません。

実際の7行目の計算結果は4時間
8行目の計算結果は3時間で表したいと考えております。

以上 宜しくお願い致します。

「Excel タイムカードで、昼休み時間を」の質問画像

A 回答 (2件)

出勤時間補正、退勤時間補正、休憩時間 の列を作って、


その時間で計算すると楽かもしれません。
非表示にすればいいし。

もし今後、残業割増の計算も含めようなんてことになってくると、
1セル内で計算をしようとすると、とんでもなくわかりにくい式になってくると思いますので。

同一シート内では邪魔だというのであれば、
非表示にするか、
計算用の別シートでを作って、結果だけ参照するようにするとか、
工夫もできると思います。

質問する場合、計算式くらいは、質問内にコピペしてもらうと、
回答者が検証する際にコピペしやすくていいと思いますが・・・。

今回、回答は質問者様に併せて画像で。
「Excel タイムカードで、昼休み時間を」の回答画像1
    • good
    • 0
この回答へのお礼

有難うございました。すいませんでした。確かにコピペできるようにするべきでした。

C2=IF(AND(A2<="12:00"*1,B2>="13:00"*1),B2-A2-"1:00",B2-A2)
C2=B2-A2-(A2<="12:00"*1)*(B2>="13:00"*1)*"1:00"

式と共に、ご指導有難うございます。

お礼日時:2017/04/09 08:48

こんにちは!



C2セルの数式を
=MAX("13:00",B2)-MIN("12:00",A2)-"1:00"*1
(エラー処理はしていません)
とすればお示しの画像の場合は対処できると思いますが、
仮に退勤時刻が12:00より前、または出勤時刻が13:00より後の場合は1時間の誤差が出てしまいます。

細かいエラー処理を考慮して
=IF(COUNTBLANK(A2:E2),"",IF(OR(A2>"13:00"*1,B2<"12:00"*1),B2-A2,MAX("13:00",B2)-MIN("12:00",A2)-"1:00"*1))

としたらどうなりますか?m(_ _)m
    • good
    • 1
この回答へのお礼

有難うございます。残念ながら いまさっき No1の方の案で作ってみました。
とりあえず、上手く計算しております。使ってみて不都合を対処します。
アルバイト先で今時 従業員の方の退勤処理を電卓で時間をかけてやっていましたので、遊び半分で作ってみました。

お礼日時:2017/04/09 11:57

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

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


このQ&Aを見た人がよく見るQ&A