excel - 检查进出时间是否在特定时间间隔之间
问题描述
经过长时间的反复试验,我正在寻找解决方案。我有 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
解决方案
好吧,我已经为 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 得到总共三个小时,而不是对它们进行或运算。
推荐阅读
- javascript - 如何等到循环内的语音完成?
- sql - 使用自定义逻辑处理来自 Redshift 的数十亿条记录
- postgresql - 得到错误 r:在“$total$ 声明总整数”处或附近未终止的美元引号字符串;
- html - 如何在闪亮的html中从ggplot中删除底部边框?
- python - 如何在 Python 中运行如下并行任务?
- javascript - 如何循环浏览 Firebase 中的快照
- javafx - 无法以编程方式选择使用对象的 Javafx 组合框项目
- c# - 我可以在 HttpSys 管道中找到控制器吗?
- javascript - 如何使用 TypeScript 在 JSS 中输入样式?
- reactjs - 如何在 react-router v5 中正确包装路由?