У меня есть таблица .XLXS с именами рабочих, временем начала и окончания.Я хочу показать общее количество часов, отработанных работником, игнорируя перекрывающиеся периоды.Например, если «Боб» работает с 08:00 до 14:00, а также с 09:00 до 13:00, его общее время в этот день должно составлять 6 часов.Если «Джо» работает с 07:00 до 09:00, его время в этот день составляет 2 часа.
Число работников варьируется, и данные за шесть месяцев составляют около 2100 строк.
Формула, предоставленная "barry houdini" для " Формула, которая будет вычислять общее количество часов в перекрывающемся массиве дат ", работает на одного работника, но я не знаю достаточно об Excel, чтобы сделать ее сортировкудля нескольких работников.
=SUMPRODUCT((COUNTIFS(B:B,"<"&MIN(B:B)+ROW(INDIRECT("1:"&ROUND((MAX(C:C)-MIN(B:B))*1440,0)))/1440-1/2880,C:C,">"&MIN(B:B)+ROW(INDIRECT("1:"&ROUND((MAX(C:C)-MIN(B:B))*1440,0)))/1440-1/2880)>0)+0)/60
MOD_BY START_DATETIME END_DATETIME total time
bob 1/2/19 17:30 1/2/19 18:45 3.2500
bob 1/2/19 21:00 1/2/19 21:15
bob 1/2/19 21:00 1/2/19 22:00
bob 1/2/19 15:00 1/2/2019 16:00
joe 1/2/19 17:30 1/2/19 18:45
joe 1/2/19 21:00 1/2/19 21:15
joe 1/2/19 21:00 1/2/19 22:00
joe 1/2/19 15:00 1/2/2019 16:00
Моя цель - получить общее количество отработанных часов работником.Приведенная формула дает итоговое значение для всего файла без разбивки по работникам.