#excel #excel-formula
#excel #excel-формула
Вопрос:
У меня есть таблица Excel с информацией ниже:
E: Дата и время в формате ММ / ДД / ГГ ЧЧ: ММ
H: количество часов
I: Ожидаемое время завершения в формате ММ / ДД / ГГ ЧЧ: ММ
I равно 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, в противном случае оставьте его как есть
Например:
Если результатом будет 05.03.19 03:52, то измените время на 05.03.19 11:30
Если результатом будет 05.03.19 22:00, то оставьте время равным 05.03.19 22:00
Время останется равным 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)amp;TIME(11,30,0),WORKDAY(E5,H5/24,Holidays!$A$2:$A$37) MOD(E5,1) MOD(H5,24)/24)
Кто-нибудь может мне помочь в этом? Спасибо за вашу помощь!
Ответ №1:
Попробуйте сократить ячейку datetime до полуночи этой даты, а затем добавьте 11,5 часов:
=IF(AND(HOUR(A1) >= 23, MINUTE(A1) > 30),
TRUNC(A1) TIME(11,30,00), A1)
Я протестировал эту формулу, и, похоже, она работает. Возможно, вам придется поиграть с форматированием ячеек исходных данных. Маска формата 3/14/12 1:30 PM
, похоже, здесь работает хорошо.
Ответ №2:
Увеличьте время до 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),"")