Я пытаюсь создать горизонтальную, возрастающую ARRAY
дату / время, но только с учетом указанного времени (8:00 утра - 5:00 вечера). Я пытался использовать NETWORKDAYS.INTL
, но это казалось более трудным и неизбежным, не давало точных результатов так, как я это делал (вероятно, неправильно).
February 1, 2020 8:00AM
February 1, 2020 9:00AM
[all hours in between]
February 1, 2020 4:00PM
February 1, 2020 5:00PM
February 2, 2020 8:00AM
[...]
February 2, 2020 5:00PM
February 3, 2020 8:00AM
Я могу сделать формула для первого дня, но я спотыкаюсь при добавлении следующих дней.
Вот что у меня есть на данный момент:
=IF(
AND(J2>=$E1+$B1,J2<$E1+$C1),
J2+(1/24),
J2-$C1+$B1
)
J2 = Первая дата в массиве =EOMONTH(TODAY(),-1)+1+[8:00AM]
E1 = Первый день месяца =EOMONTH(TODAY(),-1)+1
B1 = Время начала 8:00AM
C1 = Время окончания 5:00PM
Вот мой лист . Моя формула находится в K2 (в настоящее время перетаскивая формулу по строке, но единственная формула была бы идеальной.)
РЕДАКТИРОВАТЬ: После игры с ним и обнаружения ROUNDDOWN
, чтобы извлечь дату, я придумал это :
=IF(
AND(J2>=ROUNDDOWN(J2,0)+$B1,J2<ROUNDDOWN(J2,0)+$C1),
J2+(1/24),
ROUNDDOWN(J2,0)+1+$B1
)