Функция Match Index, match_type = 1, а lookup_array - несортированные данные - PullRequest
0 голосов
/ 07 июня 2019

Мне дают дату регистрации каждого пользователя для сайта, а также дату для каждой из страниц продукта, которые они посетили на моем сайте.

Я пытаюсь просмотреть последнюю страницу продукта, которую посетил пользователь, прежде чем он зарегистрировался на сайте. Поэтому я хочу сопоставить ближайшую дату с датой регистрации для каждого пользователя.

Я использовал функцию соответствия индекса, но даты в массиве поиска не сортируются в порядке возрастания, когда каждый пользователь посещал страницу продукта.

Вот мой текущий код:

=INDEX(C1:J1,MATCH(MIN(ABS(C2:J2-A2)),ABS(C2:J2-A2),1))

Когда match_type = 1,, я получаю NA.

У кого-нибудь есть обходные пути или другие идеи, как это сделать?

Ожидаемый результат. Поиск последней просмотренной страницы продукта на основе даты и времени, ближайших к дате регистрации.

Here is a picture of the excel sheet

1 Ответ

0 голосов
/ 07 июня 2019

Если вы хотите ближайшую дату, используйте формулу или что-то подобное с типом совпадения 0

=INDEX(C$1:J$1,MATCH(TRUE,ABS(C2:J2-A2)=MIN(ABS(C2:J2-A2)),0))

Если вы хотите ближайшую дату, но только если она предшествует дате регистрации, используйте

=INDEX(C$1:J$1,MATCH(1,(C2:J2=MAX(IF(C2:J2<A2,C2:J2)))*(C2:J2<>""),0))

Необходимо вводить в виде формул массива, используя Ctrl Shift Ввод

enter image description here

Обратите внимание, что вторая формула дает # N / A для строки 2, поскольку до даты reg нет дат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...