suw1_2000 發問時間: 電腦與網際網路軟體 · 1 0 年前

excel 函數 if

各位大大您好,

我們公司要算出加班費的excel 函數

加班30小時以下乘以1.7

加班30.5小時至50小時以下乘以1.8

加班50.5小時至70小時以下乘以1.9

加班70.5小時以上乘以2.0

如果 加班為 70.5小時,底薪為 813/8= 101.625

用手算的話

1-30 30-50 50-70 70.5

30 20 20 0.5

101.625*30*1.7= 5183

101.625*20*1.8= 3659

101.625*20*1.9= 3862

101.625*0.5*2= 102

共 ------------------12806元

可是我所寫的excel 函數 B6= 底薪 G6= 加班時速

=IF(G6-70*(B6/8)*2*G6,IF(G6-50*(B6/8)*1.9*G6,IF(G6-30*(B6/8)*1.8*G6,(B6/8)*1.7*G6)))

算出來只有12180

可以幫我看一下那里寫錯了嗎?

2 個解答

評分
  • 1 0 年前
    最佳解答

    我的算式如下,請參考看看

    =(B2/8)* IF(G3>70,(G3-70)*2+20*1.9+20*1.8+30*1.7,IF(G3>50,(G3-50)*1.9+20*1.8+30*1.7,IF(G3>30,(G3-30)*1.8+30*1.7,IF(G3>0,G3*1.7))))

    說明:

    依你手寫的算式,不論是加班幾個小時,在(30以內)、(30~50)、(50~70)、(70以上)每段時間所乘的倍數都是不同的,所以應該將每一個時段的算法分開

    一、總加班時數超過70的 :IF(G3>70,(G3-70)*2 +20*1.9 +20*1.8 +30*1.7

    二、總加班時數在50~70的:IF(G3>50,(G3-50)*1.9 +20*1.8 +30*1.7

    三、總加班時數在30~50的:IF(G3>30,(G3-30)*1.8 +30*1.7

    四、總加班時數在30以下的:IF(G3>0,G3*1.7

    將上列四個式子合在一起,就是最上面的公式了【最前面或最後面還要再乘上(B2/8)】

    參考資料: 自己
  • loow77
    Lv 5
    1 0 年前

    請試試

    =IF($G$6<30,$G$6*$B$6,IF($G$6<50,(($G$6-30)*2+51)*$B$6,IF($G$6<70,(($G$6-50)*2+87)*$B$6,(($G$6-70)*2+125)*$B$6)))

    有問題請補充

    2010-08-06 12:01:27 補充:

    修正倍率

    =IF($G$6<30,$G$6*$B$6*1.7,IF($G$6<50,(($G$6-30)*1.8+51)*$B$6,IF($G$6<70,(($G$6-50)*1.9+87)*$B$6,(($G$6-70)*2+125)*$B$6)))

    2010-08-06 14:14:28 補充:

    上公式B6已把底薪除以8

    修改B6為底薪

    =IF($G$6<30,$G$6*($B$6/8)*1.7,IF($G$6<50,(($G$6-30)*1.8+51)*($B$6/8),IF($G$6<70,(($G$6-50)*1.9+87)*($B$6/8),(($G$6-70)*2+125)*($B$6/8))))

    參考資料: ME
還有問題?馬上發問,尋求解答。