Excel年假计算:输入入职日期,自动算出年假天数
很多小伙伴在统计年假时,都会被“入职日期算工龄、工龄对应年假天数”的逻辑绕晕,手动计算不仅耗时,还容易出错。今天就给大家分享一套零出错、超简单的Excel年假计算方法——从分步拆解到一步到位,新手也能秒上手,再也不用对着表格熬时间!先明确核心规则(必看!)
首先统一年假计算标准(贴合多数企业规定,可按需调整):备注:此处工龄按“整年”计算(即入职满1年才算1年工龄),下文公式均贴合此逻辑。第一步:根据入职日期,计算工龄(整年)
假设你的表格中,G列是入职日期(比如G3单元格是某员工的入职日期),在空白单元格(比如H3)输入以下公式,按回车即可算出该员工的整年工龄:=DATEDIF(G3,TODAY(),"Y")DATEDIF函数:Excel专门用来计算两个日期之间差值的函数TODAY():自动获取当前系统日期,不用手动输入,后续日期会自动更新"Y":参数表示“计算整年差值”,只保留整数年份(比如入职2年3个月,会计算为2年)操作:输入公式后,下拉填充,就能批量算出所有员工的工龄啦~第二步:根据工龄,计算年假天数
工龄已经算好在H列(比如H3是工龄),在另一空白单元格(比如I3)输入以下公式,按回车即可得出年假天数:=IFS(H3<1,0,H3<10,5,H3<20,10,TRUE,15)IFS函数:多条件判断函数,比多个IF函数嵌套更简洁,不用层层嵌套绕晕自己H3<10,5:如果工龄大于等于1年、小于10年,年假为5天(不用额外写H3≥1,IFS会按顺序判断)H3<20,10:如果工龄大于等于10年、小于20年,年假为10天TRUE,15:其余所有情况(也就是工龄≥20年),年假为15天(TRUE相当于“否则”)操作:输入公式后,下拉填充,批量生成所有员工的年假天数,核对无误就完成啦!=LET(r,DATEDIF(G3,TODAY(),"Y"),IFS(r<1,0,r<10,5,r<20,10,TRUE,15))LET函数:Excel 365及以上版本支持的函数,作用是“给公式中的中间变量命名”,简化公式,避免重复计算r,DATEDIF(...):给“工龄”这个中间变量命名为r(可以随便命名,比如a、gll都可以),后面直接用r代替重复的工龄计算公式后面的IFS函数,和方法一中的逻辑完全一致,只是把H3换成了我们命名的变量r常见问题&注意事项
1. 工龄计算不精准,比如入职满1年了,还是显示0年?原因:DATEDIF函数“Y”参数是按“整年”计算,必须满1年才会算1年(比如2025年3月1日入职,2026年3月1日之后才算1年工龄)。2. 想固定计算到某一天(比如每年12月31日),不用当前日期?解决:把公式中的TODAY()换成固定日期,比如=DATEDIF(G3,"2026-12-31","Y"),一步到位公式同理替换即可。