赞
踩
原创作者: 卢子 转自:Excel不加班
从今天开始,又恢复学员答疑系列文章。
这是一份员工信息表,年龄、满一年日期、工龄和应休天数,希望能够自动生成。
1.年龄
年龄不需要算的那么精准,现在是2020年,如果1974年出生,就算46岁,忽略月日。
YEAR就是获取年份,TODAY就是今天,获取今年的日期的年份跟出生日期的年份,再相减就是年龄。
=YEAR(TODAY())-YEAR(C2)
2.满一年日期
比如入职日期为2020/1/1,满一年日期就是2020/12/31。
EDATE就是获取某日期之前或之后几个月的日期,满一年就是12个月,2020/1/1用这个函数得出来的是2021/1/1才满一年,所以后面减去1。
=EDATE(E2,12)-1
3.工龄
这个跟算年龄不同,需要精确到年月日。
这里的加1,原理跟案例2一样。
=DATEDIF(E2,TODAY()+1,"y")
第三参数为"y"就是相差的年份,如果为"m"就是相差的月份。
这里有部分公司,需要将工龄精确到小数点2位。就是先计算相差的月份,再除以一年12个月,最后嵌套ROUND四舍五入。
=ROUND(DATEDIF(E2,TODAY()+1,"m")/12,2)
4.应休天数
不足1年为0天;1年以上为5天;10年以上为10天;20年以上的为15天。
按区间获取对应值,最简单的办法就是做一个对应表,然后用LOOKUP。
=LOOKUP(G2,$K$2:$L$5)
如果水平稍微好点的,也可以不用对应表。
=LOOKUP(G2,{0,0;1,5;10,10;20,15})
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。