[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『パートの勤務時間の計算方法を教えてください』(miko)
タイムカードの時間を元に、パートの給与計算表を作っています。
タイムカード 実働時間 ↓ ↓ 日付 ___A___ ___B___ ___C___ ___D___ ___E___ ___F___ ___G___ ___H___ 1 出勤 退勤 出勤 退勤 時間計 昼勤務 夜勤務 深夜勤務 2 16:46 22:34 17:00 22:30 5:30 5:00 0:30 3 10:53 19:04 11:00 19:00 8:00 6:00 ? 4 5 6 ・ ・ ・ C2=IF(A2="","",CEILING(A2,TIME(,15,))) D2=IF(B2="","",FLOOR(B2,TIME(,15,))) E2=IF(COUNT(A2:B2)<2,"-",D2-C2) F2=IF(OR(C2="",C2>=TIME(17,,)),"",IF(D2<=TIME(17,,),D2-C2,IF(D2>TIME(17,,),TIME(17,,)-$H9))) G2=IF(OR(C2="",D2<TIME(17,,)),"",IF(D2>=TIME(22,,),TIME(22,,)-C2,IF(D2<TIME(22,,),D2-C2,IF(C2>=TIME(17,,),D2-TIME(17,,))))) H2=IF(OR(C2="",D2<TIME(22,,)),"",IF("24:00"-D2=0,TIME(2,,),D2-TIME(22,,)))
こちらを参考にしながら、一応ここまでやってみたのですが、G列の「夜勤務」がうまく求められません。
また、支店によっては深夜0:00を回って勤務している人がいるため、現在のHの式では求められません。
正しい方法を教えてください。
・昼勤務(〜17:00)夜勤務(17:00〜22:00)深夜勤務(22:00〜) ・昼勤務(〜17:00)夜勤務1(17:00〜18:00)夜勤務2(18:00〜22:00)深夜勤務(22:00〜) ・15分単位
・休憩時間は、後から引きます。
エクセル Excel2007 OS Windows Vista
お願いします。
+++++ ←行頭を半角スペースで始めると書き込みの改行位置が反映されます。
>・昼勤務(〜17:00)夜勤務(17:00〜22:00)深夜勤務(22:00〜) >・昼勤務(〜17:00)夜勤務1(17:00〜18:00)夜勤務2(18:00〜22:00)深夜勤務(22:00〜)
1.上の記述は、表の種類は二つあると云うことですか? ※ サンプルに「夜勤務1」と「夜勤務2」の列が見当たらないのですが。。。
2.過去の質問でしばしば言及されたのですが、「夜勤務」を計上する条件に、 休憩時間を差し引いた「時間計」が8時間以上でないといけない、と云う縛りがあったのですが、 mikoさんとこは、配慮不要ですか?
(半平太) 2010/07/01 16:31
レスありがとうございます!返事が遅れて申し訳ありません。
1.上の記述は、表の種類は二つあると云うことですか?
※ サンプルに「夜勤務1」と「夜勤務2」の列が見当たらないのですが。。。
そうです。
支店ごとに表を使い分ける予定です。
「A支店」
日付 ___A___ ___B___ ___C___ ___D___ ___E___ ___F___ ___G___ ___H___
1 出勤 退勤 出勤 退勤 時間計 昼勤務 夜勤務 深夜勤務 2 16:46 22:34 17:00 22:30 5:30 5:00 0:30 3 10:53 19:04 11:00 19:00 8:00 6:00 ? 4 5
「B支店」
日付 ___A___ ___B___ ___C___ ___D___ ___E___ ___F___ ___G___ ___H___ ___I___
1 出勤 退勤 出勤 退勤 時間計 昼勤務 17-18夜 18-22夜 深夜勤務 2 16:46 22:34 17:00 22:30 5:30 ? ? 0:30 3 10:53 19:04 11:00 19:00 8:00 6:00 ? ? 4 5
2.過去の質問でしばしば言及されたのですが、「夜勤務」を計上する条件に、
休憩時間を差し引いた「時間計」が8時間以上でないといけない、と云う縛りがあったのですが、 mikoさんとこは、配慮不要ですか?
大丈夫だと思います。
18:00から出勤する夜勤務のみの人もいますし。。。
ちなみに休憩時間は、合計勤務時間が6:15以上になった場合にカットします。
6:15〜 15分カット
6:30〜 30分カット
6:45〜7:45 45分カット
8:00〜 60分カット
=IF(E2="-","--",IF(E2<TIME(6,,),TIME(,,),IF(E2>=TIME(8,,),TIME(1,,),IF(E2>=TIME(6,45,),TIME(,45,),IF(E2>=TIME(6,30,),TIME(,30,),IF(E2>=TIME(6,15,),TIME(,15,)))))))
こんな感じの式です。(あってますか?)
タイムカードで休憩が押してある場合は、そちらを優先します。
(miko)
※1 時間がゼロの場合、「0:00」が表示されてしまいますので、 空白に見せるため、セルの書式(表示形式)をユーザー定義で [h]:mm;G/標準;;@ と設定してください。
※2 式中のROUND()は、上の「0:00の非表示」絡みで存在しています。
(1) C2セル =IF(A2="","",CEILING(A2,TIME(,15,)))
(2) D2セル =IF(B2="","",FLOOR(B2,TIME(,15,))+(B2<A2))
(3) E2セル =IF(COUNT(A2:B2)<2,"-",D2-C2)
(4) F2セル =IF(E2="-","",ROUND(MAX(0,MIN(D2,"17:00")-C2),14)) (5) G2セル =IF(E2="-","",ROUND(MAX(0,MIN(D2,"22:00")-MAX(C2,"17:00")),14)) (6) H2セル =IF(E2="-","",ROUND(MAX(0,D2-"22:00"),14))
(7) G10セル =IF(E10="-","",ROUND(MAX(0,MIN(D10,"18:00")-MAX(C10,"17:00")),14)) (8) H10セル =IF(E10="-","",ROUND(MAX(0,MIN(D10,"22:00")-MAX(C10,"18:00")),14))
行 __A__ __B__ __C__ __D__ ___E___ ___F___ ___G___ ____H____ ____I____ __J__ 1 出勤 退勤 出勤 退勤 時間計 昼勤務 夜勤務 深夜勤務 休憩 2 16:46 22:34 17:00 22:30 5:30 5:00 0:30 3 10:53 19:04 11:00 19:00 8:00 6:00 2:00 1:00 4 16:44 23:15 16:45 23:15 6:30 0:15 5:00 1:15 0:30 5 17:30 1:00 17:30 25:00 7:30 4:30 3:00 0:45 6 - -- 7 8 9 出勤 退勤 出勤 退勤 時間計 昼勤務 夜勤務1 夜勤務2 深夜勤務 休憩 10 16:46 22:34 17:00 22:30 5:30 1:00 4:00 0:30 11 10:53 19:04 11:00 19:00 8:00 6:00 1:00 1:00 1:00 12 16:44 23:15 16:45 23:15 6:30 0:15 1:00 4:00 1:15 0:30 13 17:30 1:00 17:30 25:00 7:30 0:30 4:00 3:00 0:45 14 - --
>ちなみに休憩時間は、・・・=IF(E2="-","--",IF( ・・・ >こんな感じの式です。(あってますか?)
式の中身を見ておりません。m(__)m 結果は正しいように思います。 こんな式でも求められます。ご参考まで。 ↓ I2セル =IF(E2="-","--",LOOKUP(E2*1440+0.1,{0,0;375,15;390,30;405,45;480,60})/1440)
(半平太) 2010/07/02 14:32
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.