Сейчас проблема заключается в том, что формула возвращает ближайшее значение независимо от того, является ли оно высоким или низким значением. Мне нужно только принять значение ниже, чем значения.
{=INDEX($AO$2:$AO$5000,MATCH(SMALL(IF($AN$2:$AN$5000=A2,ABS($AO$2:$AO$5000-F2)),1),IF($AN$2:$AN$5000=A2,ABS($AO$2:$AO$5000-F2)),0))}
Для справки:
АО - сумма в долларах
АН - это свидание
А это дата
F - сумма в долларах
Мы хотим сопоставить даты в AN с A, а затем найти ближайшую сумму в долларах в AO, которая меньше или равна F. В один и тот же день может быть несколько экземпляров с разными суммами в долларах. нам просто нужен ближайший, не перебирая то, что должно быть возвращено в F. Это не обязательно должна быть формула сопоставления индекса, если вы можете придумать лучший способ сделать это, но я совершенно уверен, что это должна быть формула массива, поскольку она должна учитывать все значения, чтобы принять правильное решение.
VLOOKUP
с 1 (илиTRUE
) в полеRange_lookup
(т.е.=VLOOKUP(A2,$AN$2:$AN$5000,3,1)
). Если нет, опубликуйте некоторые образцы данных, и мы сможем вам помочь. - person ian0411   schedule 20.09.2017