日期时间列落在两个时间范围之间

时间:2016-04-27 17:08:06

标签: excel excel-formula logic

对我来说,看起来更符合逻辑。在这里,我需要在日期时间格式的列上放置条件。我可以使用辅助列。

我有两个列,如日期时间格式的Dep时间和Arr时间(2016年4月3日上午10:30:00)。

if Dep time and arrival time falls between ( 0600-2159)
       diff b/w ( Dep time and Arr time) /2" 
if Dep time and arrival time falls between ( 2200-0559)  
       diff b/w ( Dep time and Arr time)/1.75

如果Dep时间和到达时间在同一日期,则此方法有效。

=IF(AND(DT>V27,AT<V28),(M2-L2)/2 # Where V27 is 0600 and V28 2159 

但如果他们在不同的日子,例如dept time是04/03/2016 04:00:00 AM和到达时间是04/05/2016 07:00:00 AM,所以我需要计算如何很多时候是在0600-2159的时间窗口和2200-0559这几天的完整旅程。

感谢您的时间!这是样本数据打印屏幕。

Here is the print screen of sample data

1 个答案:

答案 0 :(得分:2)

0600-2159之间的时间我会用

=(MAX(MOD(A2,1),TIME(22,0,0))-MAX(MOD(A2,1),TIME(6,0,0)))+
(INT(B2)-INT(A2))*(16/24)+
(MAX(MOD(B2,1),TIME(6,0,0))-MAX(MOD(B2,1),TIME(22,0,0)))

第一行考虑出发时间,第二行考虑出入和到达之间的天数,最后一行考虑到达时间。

mod函数返回日期/时间的小数部分,这只是你的时间。

int函数只返回日期(没时间)。

对于其他类别我只会使用

= B1-A1-C1

(总时间 - 0600至2159年)