Excelを使って給与計算をしたいと思っているのですが、うまくいきません。
人数も多く勤務パターンも多いので計算式を作れないでいます。
日付をまたぐ勤務パターンもあるので
24時間で対応できる計算式ができればありがたいです。
ぜひ皆さんのお力をお貸し頂きたくお願いいたします。
セルには
A:日付
B:曜日
C:出勤時間(夜勤例18.0で表示)
D:退勤時間(夜勤例30.5で表示)
E:実働時間(D-Cで求めてます)
F:所定労働時間(22時~5時以外で9時間までの実働時間)
G:時間外労働時間(22時~5時以外で実働9時間を超えた時間)
H:深夜労働時間(22時~5時の実働時間)
I:深夜残業時間(22時~5時で実働9時間を超えた時間)
※出勤時間・退勤時間は数値に変換し、退勤時間で24時を越えた時間に関しては+24して基本の勤怠データを作っています。
関数計算式を利用して算出したいのは
F:所定労働時間
G:時間外労働時間
H:深夜労働時間
I:深夜時間外労働時間
です。
例えば
日勤:出勤9.0 退勤24.0 実働15時間の場合は
F:所定:9h
G:残業:4h
H:深夜:0h
I:深残:2h
夜勤:出勤18.0 退勤31.5(朝の7時半)実働13.5時間の場合は
F:所定:4h
G:残業:2.5h
H:深夜:5h
I:深残:2h
と計算結果を出したいのです。
給与の支払いに直接関わるのでとても困っています。
よろしくお願いいたします。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
時間計算の為に列の追加が許されるのであれば、使ってみて下さい。
C1:出勤時間
D1:退勤時間
E1:実働時間
F1:所定全労働時間
G1:深夜全労働時間
H1:所定労働時間
I1:時間外労働時間
J1:深夜労働時間
K1:深夜残業時間
とします。
所定全労働時間とは、22時~5時以外の全部の実働時間(所定全労働時間=所定労働時間+時間外労働時間)
深夜全労働時間とは22時~5時の全部の実働時間(深夜全労働時間=深夜労働時間+深夜残業時間)
この2列は「表示しない(H)」で見えなくしても良いです。
E2のセルに=D2-C2
F2のセルに=IF(AND(C2<5,D2<=5),0,IF(AND(C2<5,D2>22),22-5,IF(AND(C2<5,D2>5),D2-5,IF(AND(D2<22,C2>5),D2-C2,IF(AND(C2<=22,D2<30),22-C2,IF(C2<22,22-C2+D2-29,D2-29))))))
G2のセルに=E2-F2
H2のセルに=IF(F2=0,0,IF(AND(C2>=21,G2>0,F2>9-G6),9-G2,IF(E2<9,F2,IF(OR(C2<5,C2>21.5),9-(5-C2),IF(C2<13,IF(F2>9,9,F2),22-C2)))))
I2のセルに=F2-H2
J2のセルに=IF(OR(C2<5,C2>22),IF(D2=5,5-C2,IF(D2<5,D2-C2,IF(OR(E2<9,H2<2),G2,9-H2))),IF(H2<9,IF(9-H2>G2,G2,9-H2),0))
K2のセルに=G2-J2
と各セルに入力して下さい。これで計算出来ると思います。
実働時間が24時間を超えると間違った時間が表示される時間帯が有ります。
但し、間違いが有ってはいけませんので2~3ヶ月は以前の計算方法と併用して下さい。
No.3
- 回答日時:
少し、考えてみました。
タイムゾーン--
所定:朝5:00-22:00
深夜:22:00-朝5:00
連続して9時間以上働いた場合は、残業として、カウント
それぞれのタイムゾーンにて、所定残、深夜残
考え方:
for nextを使って、(出勤+0.5)から退勤時間までを 0.5stepでまわします。
(出勤+0.5)とするのは、例:(出勤 10:00 ---10:30になったら、0.5時間働いた)
for nextでまわす時に、タイムゾーンで、足しこむメモリを選択する。
メモリ配列は4つ用意する。
' memo(1) -------H:深夜
' memo(2) -------F:所定
' memo(3) -------I:深残
' memo(4) -------G:残業
memo(1)+memo(2)---(H:深夜+F:所定)を毎回監視していて、9時間に達したら
オフセット2を与えて、それ以降は、memo(3)memo(4)が選択されるようにする。
---------------------------------------------------------------------
残業の計算は以上でよいのですが、これは、ワークシート関数だけでは不可能です。
そこで、イベントプロシージャを使います。
出勤、退勤時間を入れたら、E:実働時間(D-C)の該当セルをダブルクリックします。
これをトリガとして、当該セルの左に記入されている、出勤、退勤時間を上記の考えで
計算し、当該セル、および、右方に計算結果を代入します。
---------------------------------------------------------------------
A:日付
B:曜日
C:出勤時間(夜勤例18.0で表示)
D:退勤時間(夜勤例30.5で表示)
E:実働時間(D-Cで求めてます)
F:所定労働時間(22時~5時以外で9時間までの実働時間)
G:時間外労働時間(22時~5時以外で実働9時間を超えた時間)
H:深夜労働時間(22時~5時の実働時間)
I:深夜残業時間(22時~5時で実働9時間を超えた時間)
-------------------------------------------------------
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim StartTime As Double
Dim EndTime As Double
Dim myOffset As Double, i As Double, a As Double
Dim rowpos As Integer, Colpos As Integer
Dim memo(4) As Double
' memo(1) -------H:深夜
' memo(2) -------F:所定
' memo(3) -------I:深残
' memo(4) -------G:残業
rowpos = Target.Row
Colpos = Target.Column
If Colpos <> 5 Or rowpos = 1 Then Exit Sub
StartTime = Target.Offset(0, -2).Value
EndTime = Target.Offset(0, -1).Value
If EndTime - StartTime = 0 Then Exit Sub
myOffset = 0
For i = StartTime + 0.5 To EndTime Step 0.5
If memo(1) + memo(2) >= 9 Then myOffset = 2
If i > 0 And i <= 5 Then memo(myOffset + 1) = memo(myOffset + 1) + 0.5
If i > 5 And i <= 22 Then memo(myOffset + 2) = memo(myOffset + 2) + 0.5
If i > 22 And i <= 24 Then memo(myOffset + 1) = memo(myOffset + 1) + 0.5
If i > 24 And i <= 29 Then memo(myOffset + 1) = memo(myOffset + 1) + 0.5
If i > 29 And i <= 46 Then memo(myOffset + 2) = memo(myOffset + 2) + 0.5
If i > 46 And i <= 48 Then memo(myOffset + 1) = memo(myOffset + 1) + 0.5
Next
Target.Offset(0, 0).Value = EndTime - StartTime
Target.Offset(0, 1).Value = memo(2)
Target.Offset(0, 2).Value = memo(4)
Target.Offset(0, 3).Value = memo(1)
Target.Offset(0, 4).Value = memo(3)
End Sub
計算結果
----------------------------------------------------
C:出勤D:退勤E:実働F:所定労働G:時間外労H:深夜労働I:深夜残業
924159402
1831.513.542.552
2420020
212106130
922139400
1035259907
1433198416
23462331460
----------------------------------------------------
これで、すべてのケースで、正しく計算されているか、大丈夫だとは思いますが、
異常なケースがあれば、お知らせください。また、考えます。
No.2
- 回答日時:
すみません。
他の人に作成を依頼しているように感じるんです。
不明な点が全く書かれておらず、仕様を並べているに過ぎない質問に答えるべきか悩んでしまいます。
並べた仕様のなかで何が不明なのかを明らかにしてください。
■とりあえず回答
まずは考え方を整理します。
紙の上で日勤/夜勤において全ての出勤ケースにおける「計算過程」を一つずつ書き取ってください。
※これが計算式の基本になります。
次に条件で計算が変わる場合の条件を書いてください。
かなり面倒だとは思いますが、これができていないと機械で計算する事はできません。
また、思うような結果が得られない場合の修正もできません。
このように作成していく過程で具体的な疑問が出てくると思います。
そういった疑問であれば、ここで質問することで回答を得ることができます。
使えそうな関数
IF (云わずと知れた分岐条件関数)
MAX( =MAX(5,9) で大きい方が選択される)
MIN( =MIN(22,24) で、小さい方が選択される)
など
No.1
- 回答日時:
説明と後の計算例とがくいちがっいます。
説明のとおり計算すると初めの例ではHが2後の例ではHは7になるようですが。
回答ありがとうございます。
説明不足ですみません。
一日の労働(所定+深夜)が9時間を超えると時間外労働(残業)になるのです。
深夜時間帯(22時~5時)の労働時間だけで見るとご指摘のとおり
日勤の例ではH:2h、夜勤の例ではH:7hとなるのですが
日勤の例では所定ですでに9時間を超えているので、
深夜時間帯の2hは深夜残業になり
夜勤の例では所定の4時間と深夜時間帯7時間のうち5時間で
9時間を超えるので、深夜の残りの2hが深夜残業となるのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 求人情報・採用情報 介護の求人についてお伺いしたいです。 現在フリーターでアルバイトを探しており、グループホームの求人を 1 2023/03/20 23:15
- 労働相談 深夜の時間帯が所定労働時間の場合の深夜労働手当の計算方法 例えば、時給1500円の従業員が21時〜3 2 2023/05/07 20:06
- 人事・法務・広報 みなし残業と手当の関係 1 2023/04/12 09:23
- 人事・法務・広報 みなし残業制の深夜残業や休日出勤の割増賃金の計算方法を教えてください。 1週間の所定労働時間は40時 5 2023/05/04 16:21
- 人事・法務・広報 みなし残業と深夜の割増賃金 1 2023/04/17 00:06
- 労働相談 24時間勤務が断続的労働になった場合の給与。 元々24時間の内16時間が勤務で休憩と仮眠で20万円の 1 2022/07/26 11:05
- 労働相談 今月から専門職フルタイムパートで働きはじめました。 面接の段階では、8時間勤務で残業はほぼないとの事 3 2022/07/09 20:48
- 人事・法務・広報 4月からの残業60時間以上の割増の計算式 2 2023/03/14 14:44
- アルバイト・パート 22年10月から社会保険適用拡大について、詳しい方いらっしゃいましたら教えてください 2 2022/09/01 20:40
- 労働相談 有給休暇使用時の賃金の計算方法について 5 2022/04/04 00:02
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
至急!!体調不良でバイト休むべきか
-
建設業・夜勤の深夜労働金額の...
-
月途中で通勤手当が変更となる...
-
Excel関数で日またぎの勤務時間...
-
【教えてください。】エクセル...
-
IF関数について、14時以降の...
-
会社って、無断出勤するとどう...
-
会社遅刻
-
有給休暇について
-
給与明細と実際の出勤日数が違う
-
エクセルで深夜勤務明けが休日...
-
1分単位のタイムカード計算でエ...
-
有給休暇、パートの出勤率の計...
-
【0.25での計算】Excelを使用し...
-
何進法なのかわからない
-
なかなか就活などで一年ほど出...
-
7時間55分勤務で1ヶ月20日出勤...
-
基本給って月に祝日多かったり...
-
1日欠勤でどのくらい賞与に影響...
-
本給と加給の違いについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
至急!!体調不良でバイト休むべきか
-
7時間55分勤務で1ヶ月20日出勤...
-
月途中で通勤手当が変更となる...
-
IF関数について、14時以降の...
-
何進法なのかわからない
-
エクセル不変則な休憩時間の実...
-
【0.25での計算】Excelを使用し...
-
1分単位のタイムカード計算でエ...
-
交通費(定期代)の日割計算
-
会社遅刻
-
バイトでタイムカードを帰りの...
-
出勤前後とはどういう意味です...
-
給与明細と実際の出勤日数が違う
-
出勤日数が合わないです。
-
休日出勤のお昼休みの取り扱い...
-
遅刻・早退の場合に”○”を表示さ...
-
休日出勤時の弁当代に関して
-
出勤していない日や退勤した時...
-
タイムカードって出勤も退勤も...
-
スプレッドシートで図のように...
おすすめ情報