EXCEL中工龄工资如何计算

公司规定满1年工龄补贴每月50,2-3年100,4-5年150, 6-10年 200,11-15年 250, 16年后 300。。。我的表格中E位入职时间,G为工龄,H为工龄补贴。
求高手相助谢谢。。。。

方法一:可用公式实现:
G2 输入=datedif(e2,today(),"y") G3以下下拉或双击自动填充
H2 输入=IF(G2=0,0,IF(G2=1,50,IF(OR(G2=2,G2=3),100,IF(OR(G2=4,G2=5),150,IF(AND(G2>=6,G2<=10),200,IF(AND(G2>=11,G2<=15),250,300)))))) H3以下下拉或双击自动填充

方法二:宏实现。建一个新宏,将下列代码覆盖,执行。
Sub 工龄工资()
employeeCount = Application.WorksheetFunction.CountA(Range("e:e"))
For i = 2 To employeeCount
Range("g" & i).Value = Year(Now()) - Year(Range("e" & i).Value)
Select Case Range("g" & i).Value
Case 0
Range("h" & i).Value = 0
Case 1
Range("h" & i).Value = 50
Case 2, 3
Range("h" & i).Value = 100
Case 4, 5
Range("h" & i).Value = 150
Case 6 To 10
Range("h" & i).Value = 200
Case 11 To 15
Range("h" & i).Value = 250
Case Is > =16
Range("h" & i).Value = 300
End Select
Next
End Sub
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-07-07
H2=IF(G2>1,50,IF(G2<=5,100,IF(G2<=6,150,IF(G2<=10,200,IF(G2<=15,250,IF(G2>=16,300,"")))))
第2个回答  2010-07-07
那H处输入: =if(G>15,300,if(G>10,250,if(G>5,200,if(G>3,150,if(G>1,100,50)))))
第3个回答  2010-07-07
建一个对应表,然后用lookup()
第4个回答  2010-07-07
用数据有效性或者if函数功能
第5个回答  2010-07-07
工龄 formula: =YEAR(NOW())-E2
工龄补贴 formula: =IF(G2=1,50,IF(G2<=3,100,IF(G2<=5,150,IF(G2<=10,200,IF(G2<=15,250,IF(G2>16,300))))))
相似回答