开始日期和时间以及结束日期和时间之间的Excel公式

时间:2016-11-21 22:58:08

标签: excel date datetime

我的任务是编写,我认为是一个简单的公式,以返回TRUEFALSE。该公式正在查看开始日期,结束日期,开始时间和结束时间,并检查“检查日期”和“检查时间”。

如果“检查日期”和“检查时间”在开始日期,结束日期,开始时间和结束时间内,则返回的值应为TRUE

例如:

开始日期:12/01/17

结束日期:14/01/17

开始时间:00:30

结束时间:18:00

日期检查:13/01/17

时间检查:22:00

结果 = TRUE

我无法找到一个涵盖每一种可能情况的公式,我是否过度思考它?

更新

这是所要求的公式......它不是很漂亮

=IF(AND(CHECKDATE>STARTDATE,CHECKDATE<ENDDATE),TRUE,IF(AND(CHECKDATE>=STARTDATE,CHECKTIME>=STARTTIME),IF(AND(CHECKDATE<=ENDDATE,CHECKTIME<=ENDTIME),TRUE,IF(CHECKDATE=STARTDATE,IF(CHECKTIME>=STARTTIME,TRUE,FALSE))),IF(CHECKDATE<=ENDDATE,IF(CHECKTIME<=ENDTIME,IF(AND(CHECKDATE>=STARTDATE,IF(CHECKDATE=ENDDATE,CHECKTIME<=ENDTIME,CHECKTIME>=STARTTIME),IF(CHECKDATE=ENDDATE,IF(CHECKTIME<=ENDTIME,TRUE,FALSE))),TRUE,FALSE)))))

1 个答案:

答案 0 :(得分:1)

假设您有日期和时间的单独字段,只需在测试前将它们与添加相结合。

=AND([Start Date]+[Start Time] <= [Check Date]+[Check Time], [Check Date]+[Check Time] < [End Date]+[End Time])

screenshot

请注意,当涉及时间时,通常需要使用半开间隔start <= time < end,因为当我们指定结束时间时,我们的意思是当时事件结束(或者范围代表什么)。