You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Excel中根据流程从起始日期获取最晚结束日期?

Excel根据不同流程计算最晚结束日期的函数方案

以下是几种实用的函数实现方式,可根据你的数据结构选择:

1. 基础多层IF嵌套(兼容所有Excel版本)

假设:

  • A1 = 起始日期
  • B1 = 流程类型(如"流程A"、"流程B")
  • 对应耗时:流程A→3天,流程B→7天,流程C→5天

函数写法:

=IF(B1="流程A", A1+3, IF(B1="流程B", A1+7, IF(B1="流程C", A1+5, A1)))
  • 最后一个A1是默认值,若流程类型不匹配,返回起始日期;也可替换为#N/A提示无匹配流程。

2. SWITCH函数(Excel 365/2021及以上版本)

多层IF嵌套易混乱,SWITCH更清晰直观:

=A1+SWITCH(B1,"流程A",3,"流程B",7,"流程C",5,0)
  • 最后一个0是默认耗时,无匹配流程时结束日期等于起始日期,可按需调整。

3. 对照表匹配(适合流程较多的场景)

如果流程和耗时存在专门的对照表(比如D列存流程名称,E列存对应天数),用VLOOKUP/XLOOKUP更易维护:

VLOOKUP写法:

=IFERROR(A1+VLOOKUP(B1,D:E,2,FALSE), A1)

XLOOKUP写法(Excel 365及以上):

=A1+XLOOKUP(B1,D:D,E:E,0)
  • 用IFERROR或XLOOKUP的默认参数处理无匹配的情况,避免返回错误值。

4. 排除节假日/周末的工作日计算

如果耗时指工作日而非自然日,改用WORKDAY函数:

=WORKDAY(A1,SWITCH(B1,"流程A",3,"流程B",7,"流程C",5,0))
  • 若有自定义节假日,可添加第三个参数,比如WORKDAY(A1,3,$G$1:$G$5),其中G1:G5是节假日列表。

内容的提问来源于stack exchange,提问作者Erwin Hammock

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 06:10:59