Excel公式:如果时间大于23:30,则返回同一日期的11:30

时间:2019-03-19 08:38:36

标签: excel excel-formula

我有一个具有以下信息的excel表:

E:MM / DD / YY HH:MM格式的日期和时间
H:小时数
I:预计完成时间,格式为MM / DD / YY HH:MM

我是E + H,跳过周末和节假日,公式为

=IFERROR(WORKDAY(E5,H5/24,Holidays!$A$2:$A$37)+MOD(E5,1)+MOD(H5,24)/24,"")

但是,如果结果返回的时间是00:00-09:00之间,我想将时间更改为11:30,否则,请保持原样

例如:

如果结果为03/05/19 03:52,则将时间更改为19/05/30 11:30

如果结果为03/05/19 22:00,则将时间保持为19/3/5/19

无论原始时间是什么,时间都将保持为11:30

我正在尝试使用此公式,但是它不起作用:

=IF(WORKDAY(E5,H5/24,Holidays!$A$2:$A$37)+MOD(E5,1)+MOD(H5,24)/24>WORKDAY(E5,H5/24,Holidays!$A$2:$A$37)+MOD(E5,1)+TIME(23,30,0),WORKDAY(E5,H5/24,Holidays!$A$2:$A$37)+MOD(E5,1)&TIME(11,30,0),WORKDAY(E5,H5/24,Holidays!$A$2:$A$37)+MOD(E5,1)+MOD(H5,24)/24)

有人可以帮我吗?感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

尝试将日期时间单元格截断到该日期的午夜,然后增加11.5小时:

=IF(AND(HOUR(A1) >= 23, MINUTE(A1) > 30),
    TRUNC(A1) + TIME(11,30,00), A1)

我测试了这个公式,它似乎有效。您可能必须尝试使用​​源数据的单元格格式。格式遮罩3/14/12 1:30 PM在这里似乎很好用。

答案 1 :(得分:0)

将时间缩短到11:30:00。如果时间大于11:30:00,请不要管它。

=IFERROR(WORKDAY(E5,H5/24,Holidays!$A$2:$A$37)+MAX(TIME(11, 30, 0), MOD(E5,1)+MOD(H5,24)/24),"")