Попробуйте это
, где
I10
= ID для поиска
I11
= Мин. Дата (1 января 2018 г.)
I12
= Макс. Дата (5 января 2018 г.)
J10
= =MATCH($I$10,$A$1:$A$6,0)
получить номер строки, если идентификатор
=INDEX(INDEX($A$1:$G$6,$J$10,),
MATCH(
MAXIFS(INDEX($A$1:$G$6,$J$10,),
INDEX($A$1:$G$6,$J$10,),">="&$I$11,
INDEX($A$1:$G$6,$J$10,),"<="&$I$12
),
INDEX($A$1:$G$6,$J$10,),0
) - 1
)
были
INDEX($A$1:$G$6,$J$10,)
получить строку данных для идентификатора (повторяется несколько раз в формуле)
MAXIFS(...)
получить максимальную дату, соответствующую критериям >=
и <=
MATCH(MAXIF(...), [ID data row],0)
получить номер столбца для даты, возвращаемой MAXIF
INDEX( [ID data row], MATCH(MAXIF(...), [ID data row],0) - 1)
возвращает цвет
Альтернативная формула без MAXIFS
=INDEX(INDEX($A$1:$G$6,$J$10,),
MATCH(
MAX(IFERROR(({0,0,1,0,1,0,1})*(INDEX($A$1:$G$6,$J$10,)>=$I$11)*(INDEX($A$1:$G$6,$J$10,)<=$I$12)*(INDEX($A$1:$G$6,$J$10,)),0)),
INDEX($A$1:$G$6,$J$10,),0
) - 1
)
Введите как формулу массива (вместе с Ctrl Shift Введите вместо Введите )