当范围超过午夜时如何比较 Excel 中的时间值

问题描述 投票:0回答:2

我需要将给定单元格(例如 A1)中的时间与时间范围进行比较,看看它是否落在该范围内。数据如下:

Site 1      11:30 PM     2:30 AM

Site 2      10:00 PM     3:00 AM

Site 3       2:00 PM     8:00 PM

因此,如果在 A1 中输入值 12:00 AM(午夜),则站点 1 和站点 2 应为 True,站点 3 为 False 如果在 A1 中输入值 3:00 PM,则站点 1 和站点 2 应为 False,站点 3 应为 True。

似乎无法让 Excel 执行此操作。注意:我无法更改单元格的格式以包含日期。

excel time range comparison
2个回答
0
投票

只是想评论一下,我正在研究一个相同的问题并实现了 Mech 的解决方案,它的工作就像一个魅力。谢谢你,机甲!有很大帮助。您的答案需要更多的支持。


-1
投票

您可以使用一些技术来确定时间的小数值。

首先大致了解一下:

  • 12:00:00 AM
    是一天的开始(与
    00:00:00
    相同),因此其值为 0。
  • 12:00:00 PM
    是中午,其值为 0.5(全天的 1 半)。

要查看时间的价值,您可以执行以下任一操作:

  • =VALUE(A1)
  • =TEXT(A1,"0.0000000000")
    (零取决于您想要小数点的具体程度)
  • format the cell (ctrl-1 / right click > "Format Cells") > Number tab > Set Category to General

将上述内容应用到您的情况,以下公式将检查 AM/PM 状态,如果时间是 PM,则减去 1(1 天)。这提供了 24 小时时间之间的比较。使用

AND()
函数,我们现在可以比较 2 个值并相应地返回
TRUE
FALSE

假设格式与所附图片相同,请将其添加到

C2
并根据需要向下拖动:

=IF(AND(IF($A$1>0.5,$A$1-1,$A$1)>=IF(A2>0.5,A2-1,A2),IF($A$1>0.5,$A$1-1,$A$1)<=IF(B2>0.5,B2-1,B2)),TRUE,FALSE)

© www.soinside.com 2019 - 2024. All rights reserved.