EXCEL如何用函数计年资
根据描述,不好分辨是要求从入职到现在总共应得的工资,还是应该增加的工资?
假设按计算某员工入职以来总共的工资,那至少需要5列数据,分别是:姓名、入职日期、现在日期、工龄年薪、工作年薪。如果需要统计总年资的话,可以加一列“综合年资”,当然也可以把所有的年资都放在一个公式里。
以下面的表格为例。具体项目根据自己的需求进行增删。
两个日期的单元格格式改为日期,这样只需要在B2输入年月日,C2采用TODAY函数就可以了。
我们需要的是通过对比C2和B2的年份差距,找出该员工每月应该增加的薪资。这里面最重要的是工龄工资的求法,因为这是个变量。
上面的图是在D2输入的公式:=MIN((DATEDIF(B2,C2,"Y")-1)*100*12,600*12)
公式说明:MIN函数是两相对比,取较小的值;DATEIF函数是对比两个日期之间整年的差距数,是周年方式计算的;里面有两个特殊的赋值,就是DATEIF函数得数-1和两个数据分别*12。
因为根据你题意的描述,是只要满一年工龄了,从第二年起每月增加100元(根据题意得知,如有不符请根据实际情况改正)。
所以这个公式的意思就是:对比现在日期距离入职日期有几年了,把这个数减去1(第一年不领),然后年数乘以每年增加的工资(100/月乘以12个月),就是累计增加的年资了。把这个数和7200/年的封顶线(600/月乘以12)进行对比,哪个小就在该单元格显示哪个数字。
这样得出了工龄年资,再加上入职以来正常工作应得的工资(这里默认年资50000,乘以了工作年限,即E2=5000*DATEDIF(B2,C2,"Y")),就是该员工总共拿到的全部工资了。
估计和你的实际需求有一定出入,因为你给出的题目不太明确,加之单位不统一。所以按你给出的条件进行的计算,请根据实际情况进行修正。
=MIN(DATEDIF(A1,B1,"Y")*100,600)
DATEDIF函数意思是A1,B1之间相差的年数(整数)
MIN函数的意思是实际年资与600相比,取较小的。
DATEDIF(B2,C2,"Y") 400 =IF(D2<=6,SUMPRODUCT(D2,E2),"600")
会得到工龄。