2

У меня есть таблица в Excel, которую для простоты мы определим как:

Order# |   Date   | Price |
123    | 1-1-2013 | 100   |
135    | 1-2-2013 | 150   |
145    | 2-4-2013 | 100   |
145    | 2-5-2013 | 100   |
123    | 3-5-2013 | 250   |

В этой таблице Order # является периодическим значением с разными датами и ценами каждый раз (то есть, оплата в рассрочку). Таблица отсортирована по дате от самой старой до самой новой. Я не могу изменить или изменить содержание этой таблицы в любом случае.

У меня есть отдельный список с частичной выборкой Order #, для которого мне нужно выполнить запрос к основной таблице и вернуть значение Date для последнего соответствующего экземпляра Order #. Например, если частичная выборка ордеров была (123, 135), то таблица будет выглядеть так:

Order# | Last_Match_Date |
123    | 3-5-2013        |
135    | 1-2-2013        |

Я попытался использовать vlookup(Order#,TableArray,DateColumn,false) , но она возвращает первое совпадающее значение даты (самая старая дата), и мне нужно последнее совпадение (самая новая дата).

1 ответ1

2

Под столбцом Last_Match_Date введите эту формулу массива 1 и скопируйте ее:

=MAX(IF(order_numbers=A2,dates,""))

Куда:

  • order_numbers относится к первому столбцу в ваших исходных данных (Order #)
  • dates относятся ко второму столбцу (Дата)
  • A2 - номер заказа, который вы пытаетесь найти в отдельном списке

Формула вернет самую последнюю / последнюю дату, даже если ваши исходные данные не отсортированы.

Пример:

В приведенном ниже примере я заменил order_numbers на $A$1:$A$6 а dates на $B$1:$B$6 .

-

1 Нажмите Ctrl + Shift + Enter после ввода формулы

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .