『運送業・運転手の勤務時間』(Yoshi) 運送業を営んでいます乗務員さんの勤務時間を算出したいのですが、運送は荷主さんや着地場所・着時間によって出発時間が様々ですし日をまたぐことも多々あります。 深夜に出る場合や夕方出発積み込み後そのまま配送などです。 当然拘束時間も長くなりますし休憩時間も数度小刻みに取ったりします。 長距離はやっていませんので24時間を超えることはありません。 日付・始業時刻・終業時刻・拘束時間・休憩時間・労働時間計(所定内・時間外・深夜・休日) それぞれの1ヶ月間の合計時間 これをフォームにして頂けたらありがたいです。 みなさんには簡単なことかもしれませんが私にはちんぷんかんぷんでどうにもなりません助けて下さい。お願いします。 exel2010 win7 ---- >深夜に出る場合 以前あった質問で、深夜25:00に出発なんて云うのがありました。 普通それは、翌日の早朝1:00に出発と入力するものなんですが、 今回も始業時刻が24:00以上になるなんてあるんでしょうか? こう云うのは、休日出勤の判定に影響するので、なんかシビアな決めがあるんでしょうか? >休憩時間も数度小刻みに取ったりします。 何回取るか決まっていないのは厄介ですね。 最多回数の参考数値はありませんか? (半平太) 2012/10/02 15:32 ---- 行 ____A____   ____B____  ____C____  ____D____  ____E_____ ______F______  ______G______  _____H_____  ___I___  ___J___  __K__   __L__  _____ M_____    出勤日 始業時刻 退社日 終業時刻 拘束時間 勤務時間 休憩時間  所定内  時間外 深夜  休日   備考   確認 あれから何とかがんばってこのようなスタイルに作ってみました。 数度の休憩時間や勤務時間(所定内・時間外・深夜)は時系列日報を見ながら手入力するようにしました。 手入力のため最後の確認項目で「休憩時間・所定内・時間外・深夜」の合計時間が拘束時間と同じか確認したいのですが、関数?式?をご教授下さい。 (Yoshi) ---- >手入力のため最後の確認項目で「休憩時間・所定内・時間外・深夜」の合計時間が拘束時間と同じか確認したいのですが、関数?式? こんなので  ↓ M2セル =IF(ROUND((SUM(G2:J2)-E2)*1440,0),"-NG-","OK") ※全部手入力でやるとは思いませんでした。   まぁ、計算ルールが複雑なら、それを説明するより、手でやっちゃった方が楽かも知れませんね ^^ (半平太) 2012/10/03 12:13 ---- _A__  B   C D E F G H I J   K L 1 8:00 2 日 曜日 始業 終業 時間外 拘束時間 運転時間 作業時間 休憩  深夜  休息 24時間拘束 3 1 月  3:00 14:00 関数  関数   関数   7:12  2:00  2:00 15:00 4 2 火  23:00 10:00 関数  関数   関数 7:45 6:44 1:16 セルD1に就業規則の所定労働時間 セルA3、B3に対象月の日、曜日を用意する セルC3・D3は日報やタイムカードの時間を入力する。:書式設定は〔h〕:mm セルE3 =if(d3="","",if(f3-i3>$d$1,f3-i3-$d$1))で時間外=拘束時間-休憩時間-所定労働時間 セルf3 =if(d3>c3,d3-c3,1f(d3="","",if(d3深夜を「所定内深夜」と「時間外深夜」に分けました。 こんなものの時間算出を毎回手作業でやってられますか? 私なら全自動にしますけどね。 計算ルールを説明するのは大変でしょうが、一回やれば済む話ですから。 ただ、休憩時間データがどんぶり勘定では理論的に無理です。 「休憩を時間外に幾らとり、深夜に幾らとったのか」 それが分からなければ 「所定内深夜」とか「時間外深夜」を自動的に算出するのは不可能です。 何か簡易な決めごとに則して処理していいと云うなら話は別ですけど、 常識的には休憩時刻の詳細、つまり  1回目を何時〜何時にとり、  2回目は何時〜何時にとり、 ・・・・・・・・にとった。 と云う時刻データが必要になります。(シート上、縦に並べようか、横に並べようが) (半平太) 2012/10/04 09:09 ---- (半平太)さま、ありがとう御座います。 それでは説明させて頂きます。 運送業は1日13時間まで拘束でき、なおかつ1週間に2日まで16時間迄の拘束が許される。 1ヶ月の拘束時間は293時間まで。 連続運転は4時間までで30分以上の休憩を取らなければならない。 休憩が複数回となる理由は上記や荷下ろし時間までの待機時間を休憩扱いにすることが有るからです。 所定内は出勤より休憩を含まない8時間の勤務時間。 残業はそれ以降の勤務時間。 深夜は22:00〜翌朝05:00まで。 03:00出社で途中1時間休憩を入れたら9時間後の12:00で所定内それ以降は残業。 03:00〜05:00までが所定深夜2時間、所定深夜の枠内で休憩を取ればその分 所定内深夜の時間が差し引かれます。 18:00出社で途中1時間休憩を入れたら9時間後の03:00で所定内それ以降は残業。 22:00〜03:00までが所定深夜5時間、所定深夜の枠内で休憩を取ればその分 所定内深夜の時間が差し引かれます。 それ以降の勤務〜05:00までが時間外深夜となりますし、05:00以降は通常の残業 となります。 「所定内と所定内深夜」「時間外と時間外深夜」にダブる時間が発生しますが 労務士さん曰くそれはそれでOKだそうです。 ご理解頂きましたでしょうか? なかなか面倒です。 私には自動入力なんてシステム作れませんので・・・ よろしくお願い致します。 (Yoshi) ---- >「所定内と所定内深夜」「時間外と時間外深夜」にダブる時間が発生しますが > 労務士さん曰くそれはそれでOKだそうです。 1.つまり、所定内深夜、時間外深夜は、内書きと云うことですね。これは了解しました。 >私には自動入力なんてシステム作れませんので・・・ 2.自動入力ではありません。自動算出です。   基本的なデータは手入力するしかありません。   入力必須の基本データとは「始業時刻 終業時刻 休憩時刻(始) 休憩時刻(終) 休日リスト」です。   ただし、休憩時間は何回も取ると云うことなので、取った回数分のデータが必要です。   入れる場所を確保しなければならないので、最多取得回数を決めて頂く必要があります。   入力イメージとしては下図です(最多回数を4回と見積もった場合)   ※(1)「手」が手入力個所ですけど対応可能ですか?    ※(2) 何か別のデータでこのデータの代わりがさせられるものがありますか? 行 __A__ __B__ __C__ __D__ __E__ __F__ __G__ __H__ __I__ __J__ __K__ ____L____ ____M____ ____N____ ___O___ ____P____ ___Q___ ____R____ __S__ __T__ 1 日付 始業 終業 休1始 休1終 休2始 休2終 休3始 休3終 休4始 休4終 拘束時間 勤務時間 休憩時間 所定内 (内深夜) 時間外 (内深夜) 休日 備考 手 手 手 手 手 手 手 手 手 手 手 自動 自動 自動 自動 自動 自動 自動 自動  (入力例) 2 10/6 9:00 1:00 12:00 13:00 21:25 22:10 3 10/7 12:00 3:00 17:00 18:00 21:30 22:30 1:00 1:45 3.これへのコメントがないですけど、どうなんでしょうか?   ↓ > 以前あった質問で、深夜25:00に出発なんて云うのがありました。 > 普通それは、翌日の早朝1:00に出発と入力するものなんですが、 > 今回も始業時刻が24:00以上になるなんてあるんでしょうか? 4.休日の欄はどう処理するのですか? 5.「休日の前日〜休日」や「休日〜休日明け」の勤務だったら、   どんな計算になるのですか? 全部平日扱いですか?     例えば、休日前日23:00〜休日12:00 (半平太) 2012/10/04 11:07 <追加> 休日とはなんですか? 土、日、祝日? ---- (半平太)さまありがとう御座います。 @そういうことです。 A自動算出ですね、これだけの入力で面倒な時間計算をして頂けるなんて私には夢のようなシステムです。(笑) 休憩の入力は多くても4回ぐらいだと思います。 出来ればA4横で印刷したいので立て行入力でしたいです。 日付 出勤日 始業時刻 退社日 終業時刻 拘束時間 勤務時間 休憩時間 所定内 時間外 所定深夜 時間外深夜 休日 備考 確認 今こんな感じです。 B着日(荷降日)が売り上げ発生日になりますので 出勤日 始業時刻 退社日 終業時刻 拘束時間 1(水) 7月31日 17時00分 8月1日 5時00分 12時00分 2(木) 8月1日 20時00分 8月2日 6時00分 10時00分 3(金) 8月2日 15時30分 8月3日 4時05分 12時35分 のような形にしました。 ネットで調べて=(D4+E4)-(B4+C4)この式で拘束時間が出せました。 C土・日・祭日お休みですが、1コース金曜夕方から出勤〜土曜早朝荷降ろし後帰庫のパターンがあります。その後月曜の午後までお休みですから平日扱いにしています。 祭日前の運行も同じです。 D休日出勤はほとんどありませんが、有ったときはその部分手入力致しますので特別どうこうは有りません。 よろしくお願い致します。 (Yoshi) ---- >D休日出勤はほとんどありませんが、有ったときはその部分手入力致しますので特別どうこうは有りません。 1.休日欄は何もしない方針にします。 >A自動算出ですね、これだけの入力で面倒な時間計算をして頂けるなんて私には夢のようなシステムです。(笑) >休憩の入力は多くても4回ぐらいだと思います。 >出来ればA4横で印刷したいので立て行入力でしたいです。 >日付 出勤日 始業時刻 退社日 終業時刻 拘束時間 勤務時間 休憩時間 所定内 時間外 所定深夜 時間外深夜 休日 備考 確認 >今こんな感じです。 2.休憩時間は1〜4回発生するとして、実際どんな入力になるのですか?    こんな感じですか?   ↓ 行 __A__ ___B___ __C__ ___D___ __E__ __F__ __G__ __H__ __I__ ___J___ ___K___ ___L___ ___M___ __N__ __O__ __P__ 1 日付 出勤日 始業 退社日 終業 拘束 勤務 休始 休終 所定内 時間外 (所深) (外深) 休日 備考 確認 2 ? 10/6 9:00 10/7 1:00 12:00 13:00 3 21:25 22:10 4 23:30 0:30 5 10/7 12:00 10/7 23:00 17:00 18:00 6 10/8 9:00 10/8 23:00 12:00 13:00 7 19:00 19:30 8 10/10 11:00 10/11 2:00 17:30 18:25 9 23:00 23:15 いずれにしても、レイアウトが決まらないと着手できません。 ※一旦作式したら、レイアウト変更による追加対応は致しません。(2度手間になるだけですので)  よく考えて決めてください。 (半平太) 2012/10/04 13:02 ---- (半平太)さま、本当にありがとう御座います。 1.日付は行が休憩回数によって変化しますので手入力致します。 2.レイアウトはこれでOKです。(休憩回数がまちまちで縦行入力でも対応可能なのですか?) 3.最後の確認項目で何を確認すればよいか私には解りませんが(笑) (Yoshi) ---- >1.日付は行が休憩回数によって変化しますので手入力致します 日付と出勤日がどう違うのか私には分かりません >2.レイアウトはこれでOKです。(休憩回数がまちまちで縦行入力でも対応可能なのですか?) 正直いって、結構大変です・・・が、なんとかやってみます。 まぁ、回答者は他にいくらでも居ますので、私のがダメでも誰かやってくれます。 >3.最後の確認項目で何を確認すればよいか私には解りませんが(笑) そちらの現レイアウトにあったので書いたもので私は不要です・・・・ので削除します。 ※時間を表示するセルは、限りなく0に近い時間データを空白に見せるため、以下の書式設定をしてください。    セルの書式(表示形式)をユーザー定義で設定       ↓    [>0.003][h]:mm;[>-0.003]"";0.000;@ <入力する数式> (1) F2セル =IF(COUNT(B2:E2)=4, D2+E2-B2-C2,"") (2) G2セル =IF(F2="","",F2-SUMIF(Q2:Q6,Q2,U2:U6)+SUMIF(Q2:Q6,Q2,T2:T6))   F2:G2 一括下方へフィルコピー (3) J2セル =IF(F2="","",MIN("8:00",F2)) (4) K2セル =IF(F2="","",MAX(0,G2-J2)) (5) L2セル =IF(F2="","",MAX(0,AH2+AI2-AL2)) (6) M2セル =IF(F2="","",MAX(0,AN2+AO2-AR2)) (7) Q2セル =IF(AND(E2="",I2=""),"",IF(AND(B2="",I2<>""),Q1,IF(B2=B1,Q1,B2))) (8) R2セル =IF(Q2="","",IF(Q1=Q2,R1,C2)) (9) S2セル =IF(Q2="","",IF(Q1=Q2,S1,E2+(E2""),Q1,IF(B2=B1,Q1,B2))) R2セル=IF(Q2="","",IF(Q1=Q2,R1,C2)) S2セル=IF(Q2="","",IF(Q1=Q2,S1,E2+(E2""),Q1,IF(B2=INT(N(B1)),N(Q1)+0.25,B2)))     下にフィルコピー どんなもんでしょうか? ダメな場合は、具体的サンプルと正解をご掲示ください。 >(半平太)さま、←「さん」づけでお願いします。「さま」は私には重すぎます。 (半平太) 2012/10/06 19:13 ---- (半平太)さん、おはよう御座います。 検証してみたところ8月24日の2回目出勤部分、J29セル所定内が7:10でなくてはならないところ 8:00になっていました。当然合計時間も50分多くなっていました。 そこだけです。 日付 出勤日 始業 退社日 終業 拘束 勤務 休始 休終 所定内 時間外 (所深) (外深) 3(金) 8月2日 15:30 8月3日 4:05 12:35 11:35 19:00 20:00 8:00 3:35 2:30 3:35 8月3日 12:00 8月3日 17:00 5:00 5:00 5:00 4(土) 5(日) 6(月) 8月6日 3:00 8月6日 17:15 14:15 10:40 10:30 14:05 8:00 2:40 2:00 7(火) 8月7日 2:20 8月7日 16:55 14:35 13:05 9:00 9:15 8:00 5:05 2:40 11:45 13:00 8(水) 8月8日 2:00 8月8日 16:05 14:05 9:00 8:10 13:15 8:00 1:00 3:00 9(木) 8月9日 1:15 8月9日 16:50 15:35 11:30 9:15 13:20 8:00 3:30 3:45 10(金) 8月10日 1:40 8月10日 16:45 15:05 10:00 8:10 13:15 8:00 2:00 3:20 11(土) 12(日) 13(月) 14(火) 15(水) 16(木) 8月16日 1:50 8月16日 7:10 5:20 5:20 5:20 3:10 17(金) 8月16日 15:00 8月17日 3:45 12:45 11:45 18:00 19:00 8:00 3:45 2:00 3:45 8月17日 13:20 8月17日 17:10 3:50 3:50 3:50 18(土) 19(日) 20(月) 8月20日 1:55 8月20日 16:05 14:10 8:35 7:40 13:15 8:00 0:35 3:05 21(火) 8月21日 1:40 8月21日 16:50 15:10 10:20 8:25 13:15 8:00 2:20 3:20 22(水) 8月22日 2:35 8月22日 16:55 14:20 11:40 10:20 13:00 8:00 3:40 2:25 23(木) 8月23日 1:40 8月23日 16:20 14:40 11:30 10:05 13:15 8:00 3:30 3:20 24(金) 8月24日 1:30 8月24日 7:40 6:10 6:10 6:10 3:30 8月24日 14:50 8月24日 23:00 8:10 7:10 19:00 20:00 8:00 1:00 25(土) 合計 238:20:00 195:45:00 156:45:00 39:50:00 53:20:00 15:30:00 合計156:45の部分が所定内合計で正解は50分少ない155:55です。 ずれて醜くて申し訳ありません。 (Yoshi) ---- すみません。単純なポカです。 (当初から間違っていました) 変更前 J2セル =IF(F2="","",MIN("8:00",F2))                    ↓ 変更後 J2セル =IF(F2="","",MIN("8:00",G2)) (半平太) 2012/10/07 09:48 ---- 半平太さん 対応ありがとうございます ちょっと外出してしまった為、 検証は帰宅後になります。 申し訳ございません 親切に対応してくださり 本当に感謝しております。 Yoshi ---- (半平太)さん、 OKみたいです。 今回は本当にありがとうございました。 (Yoshi) ---- もう少しましなロジックにならないか検討していたら、 逆にロジックミスを発見してしまった(トホホ) すみませんが、下式に変更してください。 (1) X2セル =IF(Q2="","",(U2-T2)*(MEDIAN(R2,W2,T2)=T2)) (2) Z2セル =IF(Q2="","",MAX(0,(U2-T2)*(MEDIAN(R2,Y2,T2)=T2)-X2)) (3) AB2セル =IF(Q2="","",MAX(0,(U2-T2)*(MEDIAN(R2,AA2,T2)=T2)-X2-Z2)) (4) AD2セル =IF(Q2="","",MAX(0,(U2-T2)*(MEDIAN(R2,AC2,T2)=T2)-X2-Z2-AB2)) こんなデータだと差が出ます。  ↓ 行 ______A______ ___B___ __C__ ___D___ __E__ __F__ __G__ __H__ __I__ ___J___ ___K___ _____L_____ _____M_____ 1 日付 出勤日 始業 退社日 終業 拘束 勤務 休始 休終 所定内 時間外 (所定内深) (時間外深) 2 2012/8/3(金) 8月2日 15:00 8月3日 4:05 13:05 7:05 21:00 22:00 7:05 1:05 3 23:00 4:00 4 5 6 今までの数式 7 8 2012/8/6(月) 8月6日 15:00 8月7日 4:05 13:05 7:05 21:00 22:00 7:05 1:00 0:05 9 23:00 4:00 (半平太) 2012/10/09 00:11 ---- (半平太) さん、こんにちわ。 早速手直しして1人分打ち込んでみました。 非常に快適に出来ました。 ありがとう御座いました。 そこで思ったのですが、 もう一つだけ良いですか? 勤務時間と休憩開始の間に「合計休憩時間」の列を作って頂けないでしょうか? (Yoshi) ---- 1.H列の列全体を選択して、列の挿入をすると新しいH列ができますので、   新H2セル =IF(F2="","",SUMIF(R2:R6,R2,V2:V6)-SUMIF(R2:R6,R2,U2:U6)) 2.そうなると、G2列の数式はそのデータを利用できるので G2セル =IF(F2="","",F2-H2) 行 ______A______ ___B___ __C__ ___D___ __E__ __F__ __G__ ______H______ __I__ __J__ ___K___ 1 日付 出勤日 始業 退社日 終業 拘束 勤務 合計休憩時間 休始 休終 所定内 2 2012/8/3(金) 8月2日 15:00 8月3日 4:05 13:05 7:05 6:00 21:00 22:00 7:05 3 23:00 4:00 (半平太) 2012/10/09 11:05 ---- (半平太)さん、 今回は本当に感謝しております。 ありがとう御座いました。 (Yoshi) ---- (半平太)さん ご無沙汰してます。 その節はありがとう御座いました。 (半平太)さんに作って頂いた運送業の出勤簿なのですが。 先日6日大雪予報の際に1日に出勤2回退社1回があり、 6日の時間を入力した際に5日分までが合計休憩時間マイナス表示になってしまいました。 まあこんな事は1年間に2〜3日しか有りませんが修正して頂けるならお願いしたいと思い書き込みさせて頂きました。 ご無理なようならこのままで結構です。 十分重宝していますから。 重ねてその節はありがとう御座いました。  日付    出勤日 始業時刻 退社日 終業時刻 拘束時間 勤務時間 合計休憩時間 休憩開始 休憩終了 4(月) 2月4日 5:00 2月4日   17:00 12:00 8:00   4:00 7:00 8:30    10:30 13:00 5(火) 2月5日 1:30 2月5日   16:00 14:30 23:20   -0.368 4:30 7:30 12:30 13:00 6(水) 2月5日 20:00 2月6日 16:00 20:00 32:20 -0.514 22:20 4:30 7:30 13:00 (Yoshi)