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

Excel 24小时制时间对比:跨00:00的截单状态判定公式求解

Excel截单时间与配送时间超时判定通用公式问题

现有CutoffTime(截单时间)和Delivery Time(配送时间)数据,需要一个通用Excel公式,在考虑00:00:00日期切换的情况下,正确判定状态为Breached(已超时)或Not Breached(未超时)。

测试数据如下:

截单时间配送时间预期状态
1:30:00 AM4:51:33 AMBreached(已超时)
9:45:30 PMNot Breached(未超时)
12:30:00 AMNot Breached(未超时)

我尝试了公式=IF(OR(AND(B1<A$1, OR(B1<TIME(12,0,0), B1>=TIMEVALUE("12:00:00 AM"))), AND(B1>A$1, B1<TIME(12,0,0))), "Cutoff Breached", "Cutoff Not Breached"),但该公式对12:30:00 AM的判定错误,应显示Not Breached(未超时)却显示Breached(已超时),请求提供正确的通用公式。


正确通用公式

使用以下公式可准确处理跨日期的时间判定:

=IF(OR(AND(B2<>"", B2>A$1, B2<TIME(12,0,0)), AND(B2<>"", B2<TIME(12,0,0), A$1>TIME(12,0,0), B2<A$1)), "Breached(已超时)", "Not Breached(未超时)")

(注:公式中A$1为截单时间单元格,B2为当前行配送时间单元格,可根据实际表格调整单元格引用)

公式逻辑说明

核心是区分两种超时场景:

  • 场景1:配送时间在**当天上午(00:00-12:00)**且晚于截单时间 → 判定为已超时
  • 场景2:截单时间是当天下午/晚上(12:00之后),配送时间是**次日凌晨(00:00-12:00)**且早于截单时间 → 判定为已超时
  • 其余情况(含配送时间为空、下午/晚上配送早于截单时间、次日凌晨配送晚于截单时间等)均判定为未超时

测试验证

用提供的测试数据验证:

  • 第一行:配送时间4:51:33 AM晚于截单时间1:30:00 AM且在当天上午 → 输出Breached(已超时),符合预期
  • 第二行:配送时间9:45:30 PM属于下午时段 → 输出Not Breached(未超时),符合预期
  • 第三行:配送时间12:30:00 AM为次日凌晨,早于截单时间但截单时间是上午时段,不触发超时 → 输出Not Breached(未超时),符合预期

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 23:18:20