首页 > 解决方案 > 检查进出时间是否在特定时间间隔之间

问题描述

经过长时间的反复试验,我正在寻找解决方案。我有 2 列进出日期和时间。我想检查进出是否在晚上 10 点到早上 8 点之间。此外,对于那些在这个范围内的人,我想检查至少有 3 个小时在这个时间间隔内。我的数据在 A 列和 B 列中如下所示。

我需要 C 列和 D 列中的输出,其中 C 列给我的进出时间介于间隔之间,如果它在晚上 10 点到早上 8 点之间超过 3 小时,则 D 列给我。

  In                        Out             Between 10-8    <=3hrs
09/24/2019 06:00:18   09/25/2019 01:00:22        Yes          Yes
09/09/2019 17:54:58   09/10/2019 03:32:03        Yes          Yes
09/03/2019 10:19:49   09/03/2019 23:22:40        Yes          No
10/01/2019 00:01:22   10/01/2019 11:49:39        Yes          Yes
09/24/2019 23:59:46   09/25/2019 09:10:38        Yes          Yes
09/09/2019 13:11:41   09/10/2019 01:36:47        Yes          Yes
09/09/2019 13:11:41   09/09/2019 21:36:47         No           No

标签: excelexcel-formula

解决方案


好吧,我已经为 col C 尝试过这个公式

=IF(MIN(B2,INT(A2)+32/24)-MAX(A2,INT(A2)+22/24)>0,"Yes","No")

这对于col D

=IF(MIN(B2,INT(A2)+32/24)-MAX(A2,INT(A2)+22/24)>3/24,"Yes","No")

但我对第四个说“不”,因为那是在一天早些时候开始的,所以需要澄清。

在此处输入图像描述

编辑

我认为将这两个案例(当天 00:00-08:00 和次日 22:00-08:00)作为两个单独的案例比较容易。你可以将它们结合起来,但不会更短,也不会那么清晰

C栏

=IF(OR(MIN(B2,INT(A2)+32/24)-MAX(A2,INT(A2)+22/24)>0,MIN(B2,INT(A2)+8/24)-A2>0),"yes","no")

D栏

=IF(OR(MIN(B2,INT(A2)+32/24)-MAX(A2,INT(A2)+22/24)>=3/24,MIN(B2,INT(A2)+8/24)-A2>=3/24),"yes","no")

在此处输入图像描述

如果从 7:00 到 24:00 有可能发生巨大变化,您可以选择

添加两个小时 7:00-8:00 和 22:00-24:00 得到总共三个小时,而不是对它们进行或运算。


推荐阅读