Как выполнить двусторонний поиск в Excel с помощью XLOOKUP

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP0

Составьте краткое изложение этой истории. Вот краткое изложение содержания истории, основанное на фактах: Вот упрощенная версия содержания истории: Вот беззаботный взгляд на содержание истории: Исследуйте другую точку зрения: Покажите мне факты Объясните это так, будто мне 5 лет Дайте мне беззаботный пересказ

Функция XLOOKUP в Microsoft Excel наиболее известна тем, что извлекает значение из определенной строки или столбца в наборе данных. Однако вы также можете использовать этот мощный инструмент для выполнения двухстороннего поиска, возвращая значение на пересечении указанной строки и столбца.

Если вы работаете в настольном приложении Excel на ПК или Mac, вам необходимо использовать Excel 2021 или более позднюю версию (включая Excel для Microsoft 365) для доступа к функции XLOOKUP. Она также легко доступна в Excel для веб-сайта и в приложениях Excel для планшетов и мобильных устройств.

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP1

Microsoft 365 персональный

Microsoft 365 включает доступ к приложениям Office, таким как Word, Excel и PowerPoint, на пяти устройствах, 1 ТБ хранилища OneDrive и многое другое.

$99.99 в Microsoft $99.99 в Amazon Развернуть Свернуть

Использование XLOOKUP для одностороннего поиска в Excel

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

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP2

Функция XLOOKUP имеет шесть аргументов:

=XПРОСМОТР(a,b,c,d,e,f)

в котором

  • a (обязательно) — искомое значение,
  • b (обязательно) — это массив поиска,
  • c (обязательно) — возвращаемый массив,
  • d (необязательно) — текст, который будет возвращен, если искомое значение (a) не найден в массиве поиска (b),
  • e (необязательно) — режим соответствия (0 = точное совпадение; -1 = точное совпадение или следующий меньший элемент; 1 = точное совпадение или следующий больший элемент; 2 = подстановочное совпадение) и
  • f (необязательно) — режим поиска (1 = сверху вниз или слева направо; -1 снизу вверх или справа налево; 2 = двоичный поиск с использованием массива поиска (b) в порядке возрастания; -2 = двоичный поиск с использованием массива поиска (b) в порядке возрастания.

Если аргумент d опущен, Excel возвращает ноль, если искомое значение не найдено в массиве поиска. Если аргументы e и f не учтены, применяется параметр по умолчанию (точное совпадение с аргументом e, и поиск аргумента сверху вниз или слева направо f).

В этом примере введите:

=XLOOKUP(F2,A2:A100,D2:D100,»Invalid ID»,0,1)

в ячейку G2 возвращается оценка 48.

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP3

Эта формула принимает идентификатор из ячейки F2 (аргумент a), ищет его в ячейках от A2 до A100 (аргумент b) и возвращает соответствующее значение в ячейках D2–D100 (аргумент c). Если идентификатор в ячейке F2 не указан в ячейках A2–A100, поиск возвращает термин «Недопустимый идентификатор» (аргумент d). Пятый аргумент сообщает Excel, что нужно возвращать только точные совпадения (аргумент e), а шестой гарантирует, что поиск выполняется от верхней части диапазона до нижней части диапазона (аргумент f).

Использование XLOOKUP для двухстороннего поиска в Excel

Хотя односторонние поиски полезны во многих сценариях, они не позволяют вам изменять переменную, которую вы ищете. Действительно, формула выше возвращает только оценку на основе указанного идентификатора, но что, если вы хотите увидеть возраст или пол вместо этого? Вот где в игру вступает двусторонний поиск (также известный как двумерный или матричный поиск).

Для этого вам необходимо вложить один XLOOKUP в другой:

=XПРОСМОТР(a¹,b¹,ПРОСМОТР(а²,б²,c))

в котором

  • а¹ и — это искомое значение и массив для первой переменной,
  • а² и б² — это искомое значение и массив для второй переменной, а
  • c — это возвращаемый массив.

Вы также можете добавить аргументы d, e и f для каждого XLOOKUP точно так же, как вы бы делали при выполнении одностороннего поиска. Однако, чтобы не усложнять, я исключил их из синтаксиса выше и примеров ниже.

Исходя из этого, набираем:

=XLOOKUP(F2,A2:A100,XLOOKUP(G1,B1:D1,B2:D100))

в ячейку G2 возвращается оценка 48.

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP4

Это происходит потому, что Excel сначала ищет указанный идентификатор (аргумент а¹) в ячейках от A2 до A100 (аргумент ), затем он ищет указанную переменную (аргумент а²) в ячейках B1–D1 (аргумент б²) и возвращает результат на пересечении этих двух поисков в ячейках от B2 до D100 (аргумент c).

В результате, если изменить переменную в ячейке G1 на «Возраст», то получится результат 41.

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP5

Аналогично, если вы измените его на «Пол», то в результате получите М.

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP6

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

Совет профессионала: добавьте раскрывающиеся списки в ячейки поиска

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

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP7

Для этого выберите одну из ячеек подстановки (в данном случае ячейку G1) и на вкладке «Данные» на ленте нажмите «Проверка данных».

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP8

Далее в поле Разрешить диалогового окна Проверка данных выберите «Список». Наконец, активируйте поле «Источник» и выберите ячейки, содержащие значения, которые вы хотите отобразить в раскрывающемся списке. В данном случае это заголовки столбцов в ячейках B1–D1.

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP9

Нажав «ОК», вы увидите раскрывающуюся кнопку в ячейке G1, при нажатии на которую открываются параметры переменной.

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP10

Теперь повторите процесс для ячейки F2, другой ячейки поиска.

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP11

Обратите внимание, как в поле Источник я указал диапазон, который выходит за пределы размера моего набора данных, чтобы обеспечить рост (мой набор данных содержит 100 строк, но я расширил источник до ячейки A1000). Точка (также известная как оператор trim ref в этом контексте) после двоеточия сообщает Excel о необходимости обрезать все пустые ячейки в конце исходного диапазона.

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

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP12

Теперь вы можете выбрать идентификатор из раскрывающегося списка в ячейке F2.

Как выполнить двусторонний поиск в Excel с помощью XLOOKUP13

Вы также можете выполнять двусторонний поиск в Excel с помощью ИНДЕКС и ПОИСКПОЗ. Этот альтернативный вариант особенно полезен, если вы используете Excel 2019 или более раннюю версию, так как эти функции были введены в программу до XLOOKUP.

Валентин Павлов/ автор статьи
Страсть Влентина к играм началась с Resident Evil, и с тех пор он не переставал играть в хоррор-игры. Пишет экспертные руководства для самых сложных игр и обзоры для самых громких релизов. Является магистром журналистики и имеет степень бакалавра лингвистики. Любимые игры: GTA 5, Silent Hill 2, Call of Duty: Modern Warfare 2, Heavy Rain, Metro 2033 и другие.
Понравилась статья? Поделиться с друзьями:
Добавить комментарий