Получить n-е совпадение с помощью INDEX
Чтобы найти n-е совпадение значения в диапазоне и получить соответствующие данные, можно использовать формулу, основанную на функциях INDEX, ROW, SMALL и IF.
Как получить информацию, связанную с n-м совпадением значения с помощью INDEX?
Чтобы получить информацию о 3-м совпадении Усэйна Болта в таблице, как показано выше, вы можете использовать функции ROW и IF вместе для получения массива, состоящего из номеров строк всех значений Усэйна Болта. Затем используйте функцию SMALL, чтобы получить номер строки указанного n-го совпадения. Наконец, передайте результат в функцию INDEX, чтобы получить соответствующую информацию в той же строке.
Общий синтаксис
=INDEX(return_range,SMALL(IF(lookup_array=lookup_value,ROW(lookup_array-ROW(INDEX(lookup_array,1,1))+1),n))
√ Примечание: Это формула массива, которая требует ввода с помощью Ctrl + Shift + Enter.
- return_range: Диапазон, из которого нужно вернуть информацию, соответствующую n-му совпадению. Здесь имеется в виду диапазон года или времени.
- lookup_array: Диапазон, в котором нужно искать позицию строки n-го совпадения. Здесь имеется в виду диапазон победителей.
- lookup_value: Значение, которое вы указали для поиска его n-го совпадения. Здесь имеется в виду Усэйн Болт.
- n: Указывает n-е совпадение. Чтобы найти первое совпадение значения, установите n равным 1; чтобы найти второе совпадение, установите n равным 2.
Чтобы получить информацию о 3-м совпадении Усэйна Болта, скопируйте или введите формулы ниже в ячейки G8 и G9, затем нажмите Ctrl + Shift + Enter, чтобы получить результаты:
Год (Ячейка G8)
=INDEX(B6:B12,SMALL(IF(C6:C12=G5,ROW(C6:C12-ROW(INDEX(C6:C12,1,1))+1),G6))
Время (Ячейка G9)
=INDEX(D6:D12,SMALL(IF(C6:C12=G5,ROW(C6:C12-ROW(INDEX(C6:C12,1,1))+1),G6))
Объяснение формулы
Здесь мы используем следующую формулу в качестве примера:
=INDEX(B6:B12,SMALL(IF(C6:C12=G5,ROW(C6:C12)-ROW(INDEX(C6:C12,1,1))+1),G6))
- ROW(C6:C12): Функция ROW возвращает номера строк каждой ячейки в диапазоне C6:C12 в виде массива, например: {6;7;8;9;10;11;12}.
- ROW(INDEX(C6:C12,1,1)): Функции INDEX и ROW возвращают первый номер строки диапазона поиска C6:C12 в этом листе Excel, который равен 6.
- IF(C6:C12=G5,IF(C6:C12=G5,ROW(C6:C12)--ROW(INDEX(C6:C12,1,1))+1)+1) = IF(C6:C12=G5,IF(C6:C12=G5,{6;7;8;9;10;11;12}--6+1)+1): Функция IF проверяет, совпадает ли каждое значение в диапазоне C6:C12 со значением в ячейке G5, Усэйн Болт. Если да, функция вернет результат «соответствующий номер строки - 6 + 1»; в противном случае вернет FALSE. Таким образом, результаты будут в виде массива: {FALSE;2;3;4;FALSE;FALSE;FALSE}.
- SMALL(SMALL(IF(C6:C12=G5,ROW(C6:C12)-ROW(INDEX(C6:C12,1,1))+1),G6),G6) = SMALL(SMALL({FALSE;2;3;4;FALSE;FALSE;FALSE},G6),G6): Этот фрагмент возвращает 3-е (значение в ячейке G6) наименьшее значение из массива, которое равно 4.
- INDEX(B6:B12,SMALL(IF(C6:C12=G5,ROW(C6:C12)-ROW(INDEX(C6:C12,1,1))+1),G6)) = INDEX(B6:B12,4) Функция INDEX возвращает 4-е значение в диапазоне лет B6:B12, которое является Пекин 2008.
Связанные функции
Функция Excel INDEX возвращает отображаемое значение на основе заданной позиции из диапазона или массива.
Функция IF является одной из самых простых и полезных функций в книге Excel. Она выполняет простой логический тест, который зависит от результата сравнения, и возвращает одно значение, если результат TRUE, или другое значение, если результат FALSE.
Функция Excel ROW возвращает номер строки ссылки.
Связанные формулы
Получить n-е совпадение с помощью VLOOKUP
Предположим, у вас есть список значений и соответствующая информация. Чтобы получить связанную информацию для n-го совпадения значения, вы можете использовать формулу, основанную на функции VLOOKUP.
Получить информацию, связанную с наименьшими n значениями
Чтобы получить данные, соответствующие наименьшему, 2-му наименьшему или n-му наименьшему значению в списке, таблице или строке в Excel, вы можете использовать формулу INDEX и MATCH вместе с функцией SMALL.
Получить информацию, соответствующую максимальному значению
Чтобы получить данные, соответствующие максимальному значению в списке, таблице или строке в Excel, вы можете использовать формулу INDEX и MATCH вместе с функцией MAX.
Получить информацию, соответствующую минимальному значению
Чтобы получить данные, соответствующие минимальному значению в таблице, вы можете использовать формулу INDEX и MATCH вместе с функцией MIN.
Лучшие инструменты для повышения производительности Office
Kutools для Excel - Помогает вам выделиться из толпы
Kutools для Excel имеет более 300 функций, гарантируя, что нужный вам инструмент находится всего в одном клике...
Office Tab - Включите работу с вкладками в Microsoft Office (включая Excel)
- Один щелчок мыши, чтобы переключаться между десятками открытых документов!
- Сократите сотни кликов мышью ежедневно, попрощайтесь с болью в руке.
- Увеличивает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
- Добавляет эффективные вкладки в Office (включая Excel), как в Chrome, Edge и Firefox.