Связанные темы
×
Формулы и функции
Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.
Формулы и функции

ПРОСМОТРX

Используйте функцию XLOOKUP для поиска объектов в таблице или диапазоне по строкам. Например, найдите цену автомобильной части по номеру части или найдите имя сотрудника по идентификатору сотрудника. С помощью XLOOKUP можно искать в одном столбце условие поиска и возвращать результат из той же строки в другом столбце независимо от того, на какой стороне находится возвращаемый столбец.

Примечание: XLOOKUP недоступна в Excel 2016 и Excel 2019, однако вы можете столкнуться с ситуацией использования книги в Excel 2016 или Excel 2019 с функцией XLOOKUP в ней, созданной другим пользователем с помощью более новой версии Excel.

Ваш браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

Синтаксис

Функция XLOOKUP выполняет поиск диапазона или массива, а затем возвращает элемент, соответствующий первому совпадению, который она находит. Если совпадения не существует, XLOOKUP может вернуть ближайшее (приблизительное) соответствие. 

=ПРОСМОТРХ(искомое_значение; просматриваемый_массив; возращаемый_массив; [если_ничего_не_найдено]; [режим_сопоставления]; [режим_поиска]) 

Аргумент

Описание

искомое_значение

Обязательно*

Значение для поиска

*Если этот параметр опущен, функция XLOOKUP возвращает пустые ячейки, которые он находит в lookup_array.   

просматриваемый_массив

Обязательно

Массив или диапазон для поиска

return_array

Обязательный

Возвращаемый массив или диапазон

[if_not_found]

Необязательный

Если допустимое совпадение не найдено, верните текст [if_not_found], который вы указали.

Если допустимое совпадение не найдено и [if_not_found] отсутствует, возвращается #N/A .

[режим_сопоставления]

Необязательно

Укажите тип сопоставления:

0 — точное совпадение. Если ни один из них не найден, верните #N/A. Этот параметр используется по умолчанию.

-1 — точное совпадение. Если ни один элемент не найден, верните следующий элемент меньшего размера.

1 — точное совпадение. Если ни один элемент не найден, верните следующий более крупный элемент.

2 — совпадение с использованием особого значения подстановочных знаков: *, ?, ~.

[режим_поиска]

Необязательно

Укажите используемый режим поиска:

1. Выполните поиск, начиная с первого элемента. Этот параметр используется по умолчанию.

-1 — выполнение обратного поиска, начиная с последнего элемента.

2. Выполните двоичный поиск, который зависит от lookup_array сортировки по возрастанию . Если сортировка не выполнена, будут возвращены недопустимые результаты.

-2 — выполнение двоичного поиска на основе сортировки просматриваемого_массива по убыванию. Если сортировка не выполнена, будут возвращены недопустимые результаты.

Примеры

В примере 1    используется XLOOKUP для поиска названия страны в диапазоне, а затем возврата ее телефонного кода страны. Он включает аргументы lookup_value (ячейка F2), lookup_array (диапазон B2:B11) и return_array (диапазон D2:D11). Он не включает аргумент match_mode , так как по умолчанию XLOOKUP создает точное совпадение.

Пример функции XLOOKUP, используемой для возврата имени сотрудника и отдела на основе идентификатора сотрудника. Формула = XLOOKUP(B2;B5:B14;C5:C14).

Примечание: XLOOKUP использует массив подстановки и возвращаемый массив, тогда как ВПР использует один массив таблиц, за которым следует номер индекса столбца. Эквивалентная формула ВПР в этом случае будет: =VLOOKUP(F2;B2:D11;3;FALSE)

———————————————————————————

В примере 2    выполняется поиск сведений о сотрудниках на основе идентификатора сотрудника. В отличие от ВПР, XLOOKUP может возвращать массив с несколькими элементами, поэтому одна формула может возвращать имя сотрудника и отдел из ячеек C5:D14.

Пример функции XLOOKUP, используемой для возврата имени сотрудника и отдела на основе идентификатора сотрудника. Формула: =XLOOKUP(B2;B5:B14;C5:D14;0;1)

———————————————————————————

В примере 3    к предыдущему примеру добавляется аргумент if_not_found .

Пример функции XLOOKUP, используемой для возврата имени сотрудника и отдела на основе идентификатора сотрудника с аргументом if_not_found. Формула =XLOOKUP(B2;B5:B14;C5:D14;0;1;"Сотрудник не найден")

———————————————————————————

В примере 4    в столбце C выполняется поиск личного дохода, указанного в ячейке E2, и поиск соответствующей налоговой ставки в столбце B. Он задает аргумент if_not_found для возврата 0 (ноль), если ничего не найдено. Аргумент match_mode имеет значение 1, что означает, что функция будет искать точное совпадение, а если не удается найти его, она возвращает следующий более крупный элемент. Наконец, аргумент search_mode имеет значение 1, что означает, что функция будет выполнять поиск от первого элемента к последнему.

Изображение функции XLOOKUP, используемой для возврата налоговой ставки на основе максимального дохода. Это приблизительное совпадение. Формула: =XLOOKUP(E2;C2:C7;B2:B7;1;1)

Примечание:  Lookup_array столбец XARRAY находится справа от return_array столбца, тогда как ВПР может смотреть только слева направо.

———————————————————————————

Пример 5    использует вложенную функцию XLOOKUP для выполнения вертикального и горизонтального совпадения. Сначала выполняется поиск валовой прибыли в столбце B, затем выполняется поиск Qtr1 в верхней строке таблицы (диапазон C5:F5) и, наконец, возвращается значение на пересечении двух. Это аналогично совместному использованию функций INDEX и MATCH .

Совет: Для замены функции HLOOKUP можно также использовать XLOOKUP.

Изображение функции XLOOKUP, используемой для возврата горизонтальных данных из таблицы путем вложения 2 XLOOKUP. Формула: =XLOOKUP(D2,$B 6:$B 17;XLOOKUP($C 3;$C 5:$G 5;$C 6:$G 17))

Примечание: Формула в ячейках D3:F3: =XLOOKUP(D2,$B 6:$B 17;XLOOKUP($C 3,$C 5:$G 5;$C 6:$G 17)).).

———————————————————————————

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

Использование XLOOKUP с СУММ для суммирования диапазона значений, которые попадают между двумя выбранными значениями

Формула в ячейке E3: =SUM(XLOOKUP(B3;B6:B10;E6:E10):XLOOKUP(C3;B6:B10;E6:E10))

Как это работает? XLOOKUP возвращает диапазон, поэтому при вычислении формула выглядит следующим образом: =SUM($E$7:$E$9). Вы можете увидеть, как это работает самостоятельно, выбрав ячейку с формулой XLOOKUP, аналогичную этой, а затем выберите Формулы > Аудит формул > Вычислить формулу, а затем выберите Оценить, чтобы выполнить вычисление.

Примечание: Благодаря Microsoft Excel MVP , Билл Елен, за то, что он предложил этот пример.

———————————————————————————

См. также

Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.

Функция ПОИСКПОЗX

Функции Excel (по алфавиту)

Функции Excel (по категориям)

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×