
有給休暇管理表を作っている最中です。
前年度と今年度それぞれの付与日数を、入社日から6ヶ月後から起算し、関数で計算させたいのですが、上手くいきません。
別シートで、社員・パート関係なく週の所定労働日数と、週の所定労働時間が入った表を作っています。その情報から、判別用セルで一般社員ならA、パートタイマー(比例付与)ならBと判別させ、それぞれの勤続日数と、パートなら1年間の所定労働日数(都度手入力する予定)に応じて有給休暇の付与日数を計算させたいと思っています。
現状、今年度付与日数のセルに、下記のようなIF関数のネストで関数を入れてますが、FALSEと表示されてしまいます。1年間の所定労働日数を入れるとFALSEと出ます。
本来であれば、3と表示されるべきところなのですが…どこがどう間違っているのか分かりません。
そもそも有給付与日数を一般・パート合わせて関数で計算させること自体に無理があるのでしょうか。
ご教示願います。
よろしくお願い致します。
Excelのver.は2010です。
※今年度付与日数※ 前年度は【経過日数】から「-12」しています。
=IF(【一般orパート判別用セル】="A",IF(【経過日数】<6,0,IF(【経過日数】<18,10,IF(【経過日数】<30,11,IF(【経過日数】<42,12,IF(【経過日数】<54,14,IF(【経過日数】<66,16,IF(【経過日数】<78,18,IF(【経過日数】<90,20,20)))))))),IF(【所定労働日数(年)】="",0,IF(OR(【所定労働管理シート!週の所定労働日数】=1,【所定労働管理シート!週の所定労働時間】>=30),IF(AND(【所定労働日数(年)】>=48,【所定労働日数(年)】<=72),IF(【経過日数】<6,0,IF(【経過日数】<18,1,IF(【経過日数】<30,2,IF(【経過日数】<42,2,IF(【経過日数】<54,2,IF(【経過日数】<66,3,IF(【経過日数】<78,3,IF(【経過日数】<90,3,3))))))))),IF(OR(【所定労働管理シート!週の所定労働日数】=2,【所定労働管理シート!週の所定労働時間】>=30),IF(AND(【所定労働日数(年)】>=73,【所定労働日数(年)】<=120),IF(【経過日数】<6,0,IF(【経過日数】<18,3,IF(【経過日数】<30,4,IF(【経過日数】<42,4,IF(【経過日数】<54,5,IF(【経過日数】<66,6,IF(【経過日数】<78,6,IF(【経過日数】<90,7,7))))))))),IF(OR(【所定労働管理シート!週の所定労働日数】=3,【所定労働管理シート!週の所定労働時間>=30),IF(AND(【所定労働日数(年)】>=121,【所定労働日数(年)】<=168),IF(【経過日数】<6,0,IF(【経過日数】<18,5,IF(【経過日数】<30,6,IF(【経過日数】<42,6,IF(【経過日数】<54,8,IF(【経過日数】<66,9,IF(【経過日数】<78,10,IF(【経過日数】<90,11,11))))))))),IF(OR(【所定労働管理シート!週の所定労働日数】=4,【所定労働管理シート!週の所定労働時間>=30),IF(AND(【所定労働日数(年)】>=169,【所定労働日数(年)】<=216),IF(【経過日数】<6,0,IF(【経過日数】<18,7,IF(【経過日数】<30,8,IF(【経過日数】<42,9,IF(【経過日数】<54,10,IF(【経過日数】<66,12,IF(【経過日数】<78,13,IF(【経過日数】<90,15,15))))))))),0))))))

No.1ベストアンサー
- 回答日時:
有給休暇は勤続月数(或いはそれを年数表示した勤続年数)により、
付与日数が決定されます。
先ずは、以下のような有給休暇日数表を作りましょう。
勤続年数は小→大の順に並べます。
勤続月数(年数)、一般社員の有給休暇日数、定時社員の有給休暇日数
有給休暇を求める関数は次になります。
VLOOKUP(勤続月数、有給休暇日数表、(区別=一般社員)*2+(区別=定時社員)*3)
「区別」とは、「一般社員」か「定時社員」かが記入されたセルを指します。
「一般社員」の場合は、有給休暇日数表の2列目から選択されます。
IF関数の多重構造は、作るにも見直すにも間違い誘発の元なので、
できるだけ使わない方が良いです。
IF文のなかに条件値そのものを記載すると、条件変更の対応もまた大変です。
IF文は、多重構造利用は避けるべきです。
一番分かりやすく、丁寧にご説明下さり、ありがとうございました。
エクセル初心者ですが、お蔭様で正しく計算されるようになりました。
ベストアンサーとさせて頂きます。
ありがとうございました。
No.4
- 回答日時:
>社員・パート関係なく週の所定労働日数と・・・
>有給休暇の付与日数を計算させたい
一例です。
セルD2に =VLOOKUP(C2,F:G,2,1) の式を入れて下方向へ式をコピー。
添付画像を参照して下さい。
いろいろ突っ込みどころありますが、あなたの数式を見た途端 _ノフ○)))グタリ です。

No.2
- 回答日時:
基本的に・・自分で、間違っているかどうか判断できない関数作ってどうするの?ネスト深すぎ(笑)
プログラムのセンスが無さすぎますけど?
やりたいことが出来るために必要なデータを整理し、それらを使用して目的のものを求めるといった段階を踏んだワークシートを作成します。
結果的に本当に欲しいデータを得るためには印刷しない裏の部分も作成すべきです。
そうすることで論理的にわかりやすい構造のワークシートが出来上がります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
パートの社会保険加入について
-
短時間労働者と短時間就労者の...
-
130時間以上 正社員?? パート...
-
計算式教えて下さい 1日の所定...
-
労働時間とは休憩時間も含みま...
-
社会保険加入は正社員の就業2...
-
給与支払実績の無い社会保険に...
-
26歳の男です。 基本給だけ1050...
-
一日だけ国保に入る。一月分の...
-
土日を挟む退職時の健康保険に...
-
被保険者資格喪失確認通知書と...
-
社会保険の任意継続か国民健康...
-
国民年金保険料は60歳の誕生日...
-
国保から主人の扶養(会社の社保...
-
住民票のない市町村での受診
-
した と していた の言葉の使い...
-
任意団体での社会保険について
-
65歳以上の介護保険料(被扶養...
-
任意継続したいのですが、他県...
-
介護保険料と国民健康保険料は...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
計算式教えて下さい 1日の所定...
-
パートの社会保険加入について
-
労働時間とは休憩時間も含みま...
-
130時間以上 正社員?? パート...
-
短時間労働者と短時間就労者の...
-
試用期間中の従業員の健康診断
-
社会保険加入は正社員の就業2...
-
社会保険について
-
パート 社会保険扶養における...
-
パート扶養範囲と社会保険について
-
パートでWワークで働いてます。...
-
クレジットカードの申込書に書...
-
会社の保険
-
社会保険、週30時間?
-
1年のうち 4ヶ月は 88000円を超...
-
労働時間に詳しい方!社会保険 ...
-
社会保険に加入しなければいけ...
-
東京都の最低賃金(社員) 月給...
-
社会保険加入条件
-
かけもちアルバイト 社会保険
おすすめ情報