• ベストアンサー

エクセルで給料の手当計算をしたいです

初心者で質問も分かりずらいと思いますがお願いします。 勤務年数によって支給率が変わるもので 勤務年数 5年以上10年以下 1年につき1.0ヶ月     10年以上15年以下 1年につき1.1ヶ月     15年以上20年以下 1年につき1.2ヶ月     20年以上25年以下 1年につき1.3ヶ月 とあったとして 勤務年数15.678年の人がいたとします。 そうするとこの人の計算方式は  5年以上10年以下 1.0ヶ月×10年=10 10年以上15年以下 1.1ヶ月× 5年= 5 15年以上20年以下 1.2ヶ月×0.678年=                       0.836 で 合計の掛数は15.836になります 表を作って、勤務年数を入れたらこのような計算をすぐしたいのですがどうしたらいいのか教えてもらいたいので よろしくお願い致します。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

5年以下はボーナス?なし?ですか。 25年以上はいないのですか? (例データ)と(結果) 以下・以下でおかしいですが、正確に改めてください。 式の等号についても見直してください。取り急ぎで手抜きあり。 A1:H16で元データはA1:H2とA3;B16で、他は関数で出した答えです。 氏名 勤続年数 5年以下 6年以上10年以下 10年以上15年以下 15年以上20年以下 20年以上25年以下 5 10 15 20 25 50 山田 15.678 5 5 5 0.678 0 0 神田 3.9 3.9 0 0 0 0 0 田中 1.2 1.2 0 0 0 0 0 柴田 6.34 5 1.34 0 0 0 0 中田 10.23 5 5 0.23 0 0 0 植田 20.23 5 5 5 5 0.23 0 小林 23.34 5 5 5 5 3.34 0 大島 18.34 5 5 5 3.34 0 0 近藤 13.45 5 5 3.45 0 0 0 鈴木 9.4 5 4.4 0 0 0 0 木村 25 5 5 5 5 5 0 瀬戸 27.34 5 5 5 5 5 2.34 久島 32.34 5 5 5 5 5 7.34 岡本 41.02 5 5 5 5 5 16.02 C3は=MIN($B2,5) D3は=IF(MIN($B3,D$2)-SUM($C3:C3)<0,0,MIN($B3,D$2)-SUM($C3:C3)) E3:H3はD3の式を複写してください。 第4行以下はC3:H3の式を複写してください。 以上で期間が出たので、乗数(支給月数)を掛けて出す 列を1列づつ作ってください。

neba
質問者

お礼

回答ありがとうございます 分かりにくくて申し訳ありません 職場で明日試してみます 上の方々にも同じような内容ですが お返事ポイントなどメールのほうから したかったのですがメールが思いっきり 文字化けしていて困っているうちに 1日中のメンテナスに 入ってしまって ここからのお礼になって申し訳ありません また 聞きたいことがあったらお願いします

その他の回答 (3)

回答No.4

> 10年以上15年以下 1.1ヶ月× 5年= 5 ここが分かりません。普通に計算すると5.5になると思うんですが。 もし整数と小数点以下を分けて計算するって意味であれば、整数部分で支給率をVLOOKUPで検索し、小数点以下にかける方法があります。 便宜上ワークシートを二つに分けています。 計算ワークシート  A列   B列 年  数 15.678 合計掛数 =ROUNDDOWN(A2,0)+MOD(A2,1)*VLOOKUP(A2,支給率ワークシート!$A$2:$B$7,2,1) 支給率ワークシート A列 B列 年数 掛け率 0   0 5   1 10  1.1 15  1.2 20  1.3 25  0

neba
質問者

お礼

回答ありがとうございます 分かりにくくて申し訳ありません > 10年以上15年以下 の間に勤務していた期間が5年あるので = 5(年間) という意味です  もし14.678年という勤務期間だったら この人は =4(年間)になるんです お返事 ポイントなどメールのほうから したかったのですが メールが思いっきり 文字化けしていて 困っているうちに 1日中のメンテナスに 入ってしまって ここからのお礼になって申し訳ありません

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.3

A1に勤務年数 =MIN((5<=A1)*A1,10)+MIN((10<=A1)*(A1-10),5)*1.1+MIN((15<=A1)*(A1-15),5)*1.2+MIN((20<=A1)*(A1-20),5)*1.3 1.1ヶ月× 5年= 5 は5.5の間違いですよね。 25年以上の判定がないのもおかしいと思います。

neba
質問者

お礼

回答ありがとうございます 分かりにくくて申し訳ありません 職場で明日試してみます お返事 などがポイントなどメールのほうから したかったのですがメールが思いっきり 文字化けしていて困っているうちに 1日中のメンテナスに 入ってしまって ここからのお礼になって申し訳ありません

  • KYOSEN
  • ベストアンサー率22% (68/300)
回答No.1

A1を勤続年数とすると if(A1>25,23,   IF(A1>20,16.5+(a1-20)*1.3,     IF(A1>15,10.5+(a1-15)*1.2,       IF(A1>10,5+(a1-10)*1.1         IF(A1>5,(a1-5)*1,0))))) てな具合でしょうか? (25年以上は打ち止め、5年未満は支給なし)

neba
質問者

お礼

回答ありがとうございます 職場で明日試してみます お返事ポイントなどメールのほうから したかったのですがメールが思いっきり文字化けしていて困っているうちに1日中のメンテナスに入ってしまって ここからのお礼になって申し訳ありません

関連するQ&A

専門家に質問してみよう