• ベストアンサー

エクセルでの深夜残業手当の計算方法

お知恵をお貸しください。 現在、A列=出社時間、B列=退社時間、C列=労働時間(A-B)、という表があります。 これから、以下の4つの答えを取り出したいです。 D列=深夜残業:労働時間が8時間以上 かつ 22時以降の労働時間 E列=深夜:22時以降の労働時間 から D列 をマイナス F列=通常残業:労働時間が8時間以上 かつ 22時未満の労働時間 G列=通常:労働時間から上記D,E,Fを除いたもの 時間はすべて 13:00:00 の形でデータを保有しています。 どのように関数を書けばよいでしょうか。教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.3

用語の誤りを訂正させていただきます。 「出社時間」→「出社時刻」 「退社時間」→「退社時刻」 「22時未満」→「22時以前」(22時は時刻なので時間の計算には以前と以降に同じ時刻を用いても整合性が損なわれません) >C列=労働時間(A-B)、という表があります。 休憩時間は考慮しないのでしょうか? >D列=深夜残業:労働時間が8時間以上 かつ 22時以降の労働時間 24時(翌日の0時)を超えて勤務する場合の退社時刻はどのような値になりますか? >E列=深夜:22時以降の労働時間 から D列 をマイナス 考え方の問題ですが残業と深夜勤務を別に計算された方が良いと思います。 例えば、15:00:00から24:00:00まで勤務したとき、労働時間が9時間となり、通常勤務を8時間とすれば残業は1時間であり、深夜勤務は2時間になります。 手当の計算では通常の残業手当が時給の125%で深夜勤務が時給の25%として上記の勤務では時給を1000円としたとき次のようになります。 通常勤務=8時間*1000円/時間=8000円 残業手当=1時間*1000円/時間*1.25=1250円 深夜手当=2時間*1000円/時間*0.25=500円 あなたの論理では次のようになるのでしょうか? 通常勤務=8時間*1000円/時間=8000円 深夜残業=1時間*1000円/時間*(1.25+0.25)=1500円 深夜手当=1時間*1000円/時間*0.25=250円 同じ結果を得るためにあなたの論理の方が時間の計算が複雑になります。 >どのように関数を書けばよいでしょうか。 フレックスタイムを利用している場合の勤務条件を整理して条件をもう少し詳しく説明する必要があるようです。 深夜勤務は22時から翌日の5時までと記憶しています。 日付が変わる24:00:00以降に退社する場合の退社時刻が1:30:00のようになるのか、25:30:00となるかの条件が必要になります。 また、24時間以上の勤務が存在するか否かも重要になります。 数式の組み立て方には幾つかの方法があります。 IF関数で条件分岐する方法 MAX関数やMIN関数を駆使する方法 代表的な手法はこの2つと考えられます。 実際の数式は考えられる出退勤の時刻を10組程度提示して頂ければ希望に沿うものを提示できると思います。

excel_benkyo
質問者

お礼

読んでいるうちに頭が整理でき、他の方がくれたシート内の関数と、MAXとmin関数の組み合わせで完成できました。 ありがとうございます。

その他の回答 (3)

  • asciiz
  • ベストアンサー率70% (6642/9410)
回答No.4

>現在、A列=出社時間、B列=退社時間、C列=労働時間(A-B)、という表があります。 >これから、以下の4つの答えを取り出したいです。 その3つの数字をただこねくり回しても、答えは出ません。 まず、きっちり計算ルールを確定させるところから始める必要があります。 簡単に「深夜」と言いますが、0:00を超えた勤務はどうするのですか? もし、日付できっちり区切るなら、0:00以降の勤務は「翌日の早朝勤務」で計算することとなり、ご質問にある「深夜残業」には含まれないこととなります。 でもその「早朝勤務」は、「深夜残業」のように割増し計算しますか、しませんか? 区切りを0:00としないなら、何時までの勤務を「前日分」としますか? (例えば05:00) 出社・退社の半端な分数はどのようにしますか? 1分単位まで計算しますか? 10分とか15分単位で切り捨てますか? 1時間未満の端数はすべて切り捨てますか? そのようなことを決めたうえで、まずは出社時刻・退社時刻より、24時間を「早朝勤務時間」「昼間勤務時間」「通常残業時間」「深夜残業時間」などと区切って、それぞれの部分で、何時間何分勤務したのかを、出します。 さらにご質問にあるルールでは、「一日の勤務時間が8時間を超えるときに、深夜残業の部分を『早朝勤務』と『通常残業』と『深夜残業』に分ける」と言う計算式が必要になります。 またそこで、「早朝勤務」には残業と同等の割り増しをするのか、昼間勤務と同じなのか。 そのぐらいの計算列を作って、ようやく最終的な「早朝勤務時間」「昼間勤務時間」「通常残業時間」「深夜残業時間」の列が出来て、そこに時給と深夜割増等の掛け算ができるようになり、給与計算ができます。 このルールは会社ごとに違うので、ルールに合わせた計算式を設定し、ミスの無いようにコピーしなければなりません。 ルールが変われば、整合性が崩れないように慎重に、式を変更しなければなりません。 はっきり言って、Excelで給与計算をするのは、作るのが大変で、メンテも大変で、どこか間違っていたらすべて自分の責任で、給与の過不足で訴えられる危険性まであるというとてもリスクの高いものになります。 それだから、勤務・給与のパッケージソフトと言うものがあるわけです。 勤務ルールに従った設定を最初に入れ込めば、あとは出社・退社時刻の記録だけで、給与計算ができます。 まあ、Excelの練習に作ってみたいというならそれは勉強ですから構いませんが。 実務用にこれから作ろうとしているんだったら、自分で作るよりもパッケージソフトの導入をお勧めします。 まあさすがに、給与配るのが1人とか2人とかですと、給与ソフト買うのも考えてしまいますが…。 (給与ソフトも買い切りではなく、毎年保守費用がかかるものが多いです。その代わり、保守費用を取るものはインストールや給与ルールの設定方法のサポートを受けることができて、毎年ある税制改正に対するアップデートをしていってくれるので、使う側は勤務時間だけ入れれば正確な給与計算をしてくれます。)

excel_benkyo
質問者

お礼

ご丁寧にありがとうございます。 とりあえず他の方のアドバイスに従ってエクセルでやってみて、パッケージソフトを検討してみます。

  • Nobu-W
  • ベストアンサー率39% (725/1832)
回答No.2

http://mt-soft.sakura.ne.jp/web_dl/excel_shift/help_excel/index.htm このサイトのシ~ト参照するのもいいかも シ~トDLできるし、応用して自分好みにも大変身させてみて

参考URL:
http://mt-soft.sakura.ne.jp/web_dl/excel_shift/help_excel/index.htm
excel_benkyo
質問者

お礼

ありがとうございます。 見てみます!!

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

データ記入方式等により色々と難しい問題がありますので、エクセルから出社時間と退社時間が一致するデータをVLOOKUP関数で抽出してみてはいかがでしょう。

excel_benkyo
質問者

お礼

参考になりました。この関数と他の方が教えてくれた時間を切り分けて考える理屈でできました!! ありがとうございます。

関連するQ&A

  • エクセルで時給計算したいけど、残業とか深夜とか・・・

    エクセルで給料計算をしたいのですが・・・ 1:労働時間が8時間以上の際は通常時給に25%プラス(22:00迄) 2:22:00以降の残業は全て深夜扱いで通常時給に50%プラス 上記の2点が同時に発生する際にどう解決してよいか教えてください。 因みに・・・ D2~:出社時間 E2~:退社時間 F2~:休憩時間(最大1:30) G2~:合計勤務時間 H2~:勤務時間(定時) I2~:勤務時間(残業:8時間以上の勤務で22:00迄) J2~:勤務時間(深夜残業:22:00以降の勤務全て) と設定しています。 カテ違いかもしれない質問なんですが、どうしても分からないので是非協力頂けると嬉しいです。お願いします。

  • エクセル2010 深夜残業時間の計算

    出社・退社の時間から、残業、深夜残業など、 残業時間を算出する数式を作成していますがどうにもうまく出来ません。 残業となる時間の切り分けは、平日は以下のようになっています。、  基本時間→8:30~17:15  残業→5:00~8:30 と17:15~22:00  深夜残業→22:00~翌朝5:00  休憩時間→0:45(C1) 基本勤務時間→8:00(B1) 例えば平日、朝6:00出社→23:00退社であれば、 早朝残業が2:30、通常残業が4:45、計7:15です。深夜残業が1:00となります。 F欄に時間外、 G欄に深夜残業としています。 現状は時間外を出すのに  =SUM(E5-D5)-$B$1-$C$1-G5 と単純にしてます。(G5は手入力) これを自動で入力できたらと考えています。 5:00前に出勤することはほとんどありませんが、22:00を超えることはあります。 ただし、24:00を超えると翌日計算になります。 過去欄を参考にしようにも理解できなく困っています。 http://okwave.jp/qa/q8147465.html よろしくお願いいたします。

  • Excel2003 深夜残業時間の計算

    少し長い質問になりますが、よろしくお願いいたします。 出社・退社の時間から、早朝残業や夕方残業、深夜残業など、 残業時間を算出する数式を作成していますがどうにもうまく出来ません。 残業となる時間の切り分けは、平日は以下のようになっています。、  早朝残業→5:00~8:30  基本時間→8:30~17:00  通常残業→17:00~22:00  深夜残業→22:00~翌朝5:00 例えば平日、朝6:00出社→23:00退社であれば、 早朝残業が2.5、通常残業が5.0、深夜残業が1.0となります。 深夜残業を出す数式を、以下のように作成してみたのですが、うまく算出できません。 C列に出社、D列に退社、入力はコロンを挟んだ時間の形式で、表示形式は[h]:mmです。 A列に日付、B列に祝日のフラグ、数式はG列に入れています。 =IF(C10="",0,IF(OR(TEXT(A10,"aaa")="日",TEXT(A10,"aaa")="土",B10="祝"),0,IF(AND(D10>=VALUE("22:00"),C10<=VALUE("5:00")),ROUND((MIN("29:00",D10)-"22:00")*24,2),IF(AND(C10>=VALUE("0:00"),C10<VALUE("5:00")),ROUND((MIN("5:00",D10)-C10)*24,2),0)))) ですが、出社13:00→退社27:00のところで、深夜残業が0.0になってしまい、 数式の IF(AND(D10>=VALUE("22:00"),C10<=VALUE("5:00"))をOR式に変更しました。 =IF(C10="",0,IF(OR(TEXT(A10,"aaa")="日",TEXT(A10,"aaa")="土",B10="祝"),0,IF(OR(D10>=VALUE("22:00"),C10<=VALUE("5:00")),ROUND((MIN("29:00",D10)-"22:00")*24,2),IF(AND(C10>=VALUE("0:00"),C10<VALUE("5:00")),ROUND((MIN("5:00",D10)-C10)*24,2),0)))) すると、出社0:00→退社18:30のところで、深夜残業が0.0になってしまいました。 両方をカバーできる数式はどのようになるのか、色々試しても出来ません。 お分かりになる方、いらっしゃいましたらお知恵を貸してください。 説明がうまく出来ていないかもしれません、分かりづらい文章で申し訳ありませんが どうぞよろしくお願いいたします。

  • エクセルで時間計算を教えてください!!

     作業の効率化と計算ミスを防ぐため、エクセルで勤務表を作成したいと思っております。 イメージとして     A    B     C     D     E     F     G     H 1列 日   出勤   退勤   残業   深夜  総労働  遅・早   休息 2列 1  4:20   17:42    4:22   0:40   12:22 3列 2  7:51    24:00          2:00    7:57    0:03    7:12 4列 3  0:00    10:50    1:00    5:00    9:00    0:50 5列 4  16:30    6:30    5:00    7:00   13:00 6列 5  8:30   17:30               8:00 A(日)・B(出勤)・C(退勤)・H列(休息)は、手入力しますが、 D(残業)・E(深夜)・F(総労働)・G(遅刻・早退)は、自動計算させたいと考えております。 F(総労働)は 退勤-出勤-休憩=X (Xが8時間以上なら-1時間 8時間に満たない時はそのまま表示) D(残業)は、X-8時間 (Xが8時間に満たない時は、空白のまま) E(深夜)は、22:00から5:00とする。 G(遅刻・早退)は、Xが8時間に満たない時のみ (8時間-X=Y)を表示させる。 ★出勤時間・退勤時間は、人や仕事の内容によりバラバラです。    H(休息)は、2日運行等になった時のみです。   休日など空白になっている時は、空白のまま。   説明が下手で申し訳ありませんが、お知恵を貸してください!! 宜しくお願いします。

  • エクセル残業計算書を教えてください!!

    EXCELで残業計算書を作成していますが、なにぶん素人なもので、独り孤軍奮闘しております。 どうしても、うまく組めず困り果てております。皆様のお知恵をお貸しください・・・ エクセル表で A列   B列    C列      D列         E列 12/1  月曜日  残業時間  労働時間    結果(1週間の合計D列が40時 間を超えた場合は、超えた時間 43.25h→3.25h) 12/2                (残業含む)     (40hを超えていない場合は、C列の計)をだしたいんです。  ・ 12/28(日)-12/31(水)のような場合はD列計は次の月のD列頭に移行する このように、月初めと月終わりが素直に日曜~土曜までではなく、週の途中から始まってしまったりします。 月を入力すれば、A列・B列が自動で出るようには出来たのですが、E列が上手くいきません。 よろしく御指導おねがいします。

  • 残業代の計算をエクセルで・・・。

    エクセルで残業代の計算をしたいのですが、どのようにすればいいのかが全く分かりません。 A列は日付、B列は出勤時間、C列は退勤時間、D列は勤務時間(単純に退勤時間から出勤時間を引いた値)、E列に休憩時間が入力されています。 希望としてはF列に実働時間が、G列に残業時間が入るようにしたいのです。 ①休憩時間は原則1時間ですが、例えば30分しか取れなかった場合は本来取るべきだった残りの30分を残業代に含めることにしています。 ※労基法?ではあまり良しとしていないようですが、ここではあえて無視をしています。 ②勤務時間は午前8時30分から午後5時15分までで、それ以降に勤務していた場合は残業代として15分刻みで支給します。 以上の条件を考慮した残業時間がG列に出る関数がわかりません・・・。 また、土日祝日に勤務した場合は、H列に休日出勤時間が出るようにしたいのです。 給与計算を担当することになったのですが、前任者は一つ一つ手計算をしていたようなのですが、手間がかかり、また間違いの元にもなるかと思いエクセルの数式で何とかできないかと思い質問させていただきました。 何卒ご協力お願いいたします。

  • EXCEL(2013)で給与計算したい

    EXCEL(2013)で出勤時間・退社時間を入力するだけで、給与計算できるフォーマットを作りたいです。 いろいろHP見ながらチャレンジしていますが全くできず困っています。 どなたか助けてください。  ★勤務開始(出勤時間)から8時間超えが残業  ★深夜勤務 22時~翌朝5時 (うち2時~5時まで休憩 カウントしない)  ★出勤して退社し、また再出勤して通常勤務ー深夜勤務ー早朝勤務まですることがある。  ★通常時間帯と深夜勤務の時給が違う。(例:通常 920円 深夜勤務 1120円)  ・A列 出勤時間 (手入力)  ・B列 退社時間 (手入力)  ・C列 再出勤時間 (手入力)  ・D列 再退社時間 (手入力)  ・C列 通常勤務時間(勤務開始(出勤時間)から8時間以内)  ・D列 残業時間(8時間を超え22時まで)  ・E列 深夜勤務(22時~翌朝5時まで うち休憩が2時~5時)  ・F列 深夜残業(22時以降の勤務で通常勤務で8時間を超えた時間)?        〃   残りの時間?  ・ 列 早朝勤務(翌朝5時以降の勤務)  ・ 列 早朝残業(翌朝5時以降の勤務で既に8時間を超えてる時間)?       〃  (残りの時間)?    列 給与金額 勤務時間が8時間を超えた時点で、22時まで×1.25 深夜勤務×1.5 早朝勤務×1.25 の係数になるためどの勤務パターンで8時間になり、8時間以降は何時間にるのか知りたい。   関数など詳しくありませんので、出来ればコピペできるようにお願いしたいです。 うまく説明できませんが、どなたかご教示いただければ助かります。

  • エクセル残業計算の関数教えてください!!

    EXCELで残業計算書を作成していますが、なにぶん素人なもので、独り孤軍奮闘しております。 どうしても、うまく組めず困り果てております。皆様のお知恵をお貸しください・・・ エクセル表で A列   B列    C列      D列         E列 12/1  月曜日  残業時間  労働時間    結果(1週間の合計D列が40時 間を超えた場合は、超えた時間                     (残業含む)             43.25h→3.25h) 12/2                             (40hを超えていない場合は、C列の計)をだしたいんです。  ・ 12/28(日)-12/31(水)のような場合はD列計は次の月のD列頭に移行する 通常は日曜から土曜日で1週間を区切るのですが、月初めと月終わりが素直に日曜~土曜までではなく、 週の途中から始まってしまったりします。 よろしくお願いいたします

  • Excelで勤務時間の集計をしたいのですが、ウマくいきません。ヘルプお願いします。

    A列⇒始業時間、B列⇒終業時間、C列⇒休憩開始時間、D列⇒休憩終了時間を入力し、E列に定時(通常)時間数、F列に定時(深夜)時間数、G列に残業(通常)時間数、H列に残業(深夜)時間数を出すような形にしたいのですが、どうもウマくいきません。例えば、A⇒15:00、B⇒26:00、C⇒21:30、D⇒22:30と入力した時にE⇒6.5、F⇒1.5、G⇒スペース、H⇒2.0となるためにはE~Hまでどの様な式を入れたらよいのでしょうか?

  • 深夜勤務を含む時間外割増賃金計算シート

    24時間稼動の工場で働く人の割増賃金を計算するためのタイムシートを作成中です。次のように進んでいます。尚、深夜残業時間帯は午後10時から翌朝5時までとしています。 E列:出社時刻 F列:退社時刻 G列:就労時間合計(休憩1Hのぞく) =IF(ISNUMBER(E8),F8-E8-TIME(1,0,0),"") H列:残業時間(8時間を超えた分、25%割増) =IF(OR(E8="",F8=""),"",MAX(MIN(F8+(F8<E8),22/24)-E8-18/48,0)) I列:深夜労働1 (休日以外、25%割増) =IF(OR(E9="",F9=""),"",MAX(F9(F9<E9),22/24)-22/24) J列:深夜労働2(休日以外で8時間を超えた部分、50%割増) *8Hを超える残業時間が深夜時間帯にかかる部分 K列:休日労働1 (35%割増) =IF(OR(E9="",F9=""),"",MIN(F9+(F9<E9),22/24)-E9-1/24) L列:休日労働2 (深夜労働時間帯にかかる部分、60%割増) J列とL列にどのように式を入れたらよいのかわからないのですが、現状だと他の列の式も変える必要がありそうです。というか全部変える必要あり? 極端な例ですが、普通の日に10時出社、翌朝6時退社した場合、H列4H、 I列7Hとなるべきですが、現状だとH列3H,I列8Hと出てしまいます。 J列、L列の式を含めて、どのように修整したらよいのか、教えてください。。どうぞ宜しくお願い致します。何だかこれを作るのに疲れてしまって、いいフリーソフトが無いか探してみましたが、見つかりませんでした。。

専門家に質問してみよう