excel里要同时算「多少个工作日后到期」、「员工入职了几年几个月几天」,最实用的搭配就是workday加datedif:前者按工作日规则往后推日期,后者直接把两个日期之间的间隔拆成年、月、天,两个函数各管各的事,算出来的结果稳得多。
先用 WORKDAY 写基础公式,把开始日期往后推指定工作日
要是需求是从某个起始日期往后顺延指定天数的工作日,直接用最基础的WORKDAY写法就行。常规结构就是填好起始日期+要算的工作日天数,Excel会自动跳过周末,直接返回落在工作日的最终结果。这步很适合算交付日期、回款日期、排班节点这类基础推算场景。

遇到法定节假日时,把假期区域一起传进 WORKDAY
要是表里除了周末,还要避开国庆、春节这类法定节假日,就别只填前两个参数。你可以先把所有要排除的节假日日期单独整理成一块区域,把这个区域作为第三个参数塞进公式,算出来的结果才更贴合实际业务安排。改完之后,Excel往后推日期的时候,不仅会自动跳过周六周日,连你提前列好的法定假期也会一起排除。

再用 DATEDIF 计算日期差,把天数和月数先拆出来
要算两个日期之间隔了多少天、多少个月,直接用DATEDIF就行。这个函数最核心的是最后一个单位参数:填「D」就能拿到两个日期间隔的总天数,填「M」就能拿到间隔的完整月数。先把这些基础差值单独算出来,后面不管是统计工龄、服务年限,还是算合同到期时间,组合公式都要方便很多。
诊断并修复涉及公式、命名范围、Power Query 刷新、数据透视表、VBA/宏保存等问题的 Microsoft Excel XLSX 工作簿

工龄场景里,把 DATEDIF 按年、月、天拼起来最直观
做员工工龄表、项目服务年限统计的时候,只返回总天数根本没法直接看。这时候你可以用DATEDIF分别算出间隔的年、月、天,再把结果拼起来,直接显示成「几年几个月几天」的格式。这样表格里的在职时长一目了然,人事、行政或者部门主管扫一眼就能看懂,根本不用自己手动换算。

最后把工龄结果再格式化,统一成 年月日文本更适合交付
要是算好的结果要直接交给其他业务同事,或者要贴进正式台账,还可以再多走一步,把拆好的工龄结果统一格式化成固定样式,比如「0年09个月20天」这种写法。整列内容看起来会整齐很多,不会出现数字位数长短不一的情况,后续做筛选、核对、打印输出都更方便。到这一步,WORKDAY负责的工作日推算、DATEDIF负责的工龄计算两套流程就都跑通了。


















