Я записал эту формулу для диапазона E2:
=IF(AND(A2=A3,TRUNC(B2,0)-TRUNC(B3,0)=0),MIN(B2,B3),IF(AND(IFERROR(TRUNC(B2)-TRUNC(B1)=0,FALSE),E1=MIN(B2,B1)),"",B2))"
Поскольку engli sh не является моим языком по умолчанию в Excel, я просто перевел его вручную. Во всяком случае, на всякий случай, вот код VBA для вставки его в диапазоне E2:
Range("E2").FormulaR1C1 = "=IF(AND(RC[-4]=R[1]C[-4],TRUNC(RC[-3],0)-TRUNC(R[1]C[-3],0)=0),MIN(RC[-3],R[1]C[-3]),IF(AND(IFERROR(TRUNC(RC[-3])-TRUNC(R[-1]C[-3])=0,FALSE),R[-1]C=MIN(RC[-3],R[-1]C[-3])),"""",RC[-3]))"
Я пробовал различные конфигурации, и он работает для меня. Единственная точка: список должен быть отсортирован по имени и входу часов.