Прочитав статью, вы не только узнаете, как найти данные в таблице Excel и извлечь их в другую, но и приёмы, которые можно применять вместе с функцией ВПР.
Батьянов Денис на правах гостевого автора рассказывает в этом посте о том, как найти данные в одной таблице Excel и извлечь их в другую, а также открывает все секреты функции вертикального просмотра.
При работе в Excel очень часто возникает потребность найти данные в одной таблице и извлечь их в другую. Если вы ещё не умеете это делать, то, прочитав статью, вы не только научитесь этому, но и узнаете, при каких условиях вы сможете выжать из системы максимум быстродействия. Рассмотрено большинство весьма эффективных приёмов, которые стоит применять совместно с функцией ВПР.
Даже если вы годами используете функцию ВПР, то с высокой долей вероятности эта статья будет вам полезна и не оставит равнодушным. Я, например, будучи IT-специалистом, а потом и руководителем в IT, пользовался VLOOKUP 15 лет, но разобраться со всеми нюансами довелось только сейчас, когда я на профессиональной основе стал обучать людей Excel.
ВПР — это аббревиатура от вертикального просмотра. Аналогично и VLOOKUP — Vertical LOOKUP. Уже само название функции намекает нам, что она производит поиск в строках таблицы (по вертикали — перебирая строки и фиксируя столбец), а не в столбцах (по горизонтали — перебирая столбцы и фиксируя строку). Надо заметить, что у ВПР есть сестра — гадкий утёнок, которая никогда не станет лебедем, — это функция ГПР (HLOOKUP). ГПР, в противоположность ВПР, производит горизонтальный поиск, однако концепция Excel (да и вообще концепция организации данных) подразумевает, что ваши таблицы имеют небольшое количество столбцов и гораздо большее количество строк. Именно поэтому поиск по строкам нам требуется во много раз чаще, чем по столбцам. Если вы в Excel слишком часто пользуетесь функцией ГПР, то, вполне вероятно, что вы чего-то не поняли в этой жизни.
Синтаксис
Функция ВПР имеет четыре параметра:
=ВПР( <ЧТО> ; <ГДЕ> ; <НОМЕР_СТОЛБЦА> [;<ОТСОРТИРОВАНО>] ), тут:
<ЧТО> — искомое значение (редко) или ссылка на ячейку, содержащую искомое значение (подавляющее большинство случаев);
<ГДЕ> — ссылка на диапазон ячеек (двумерный массив), в ПЕРВОМ (!) столбце которого будет осуществляться поиск значения параметра <ЧТО>;
<НОМЕР_СТОЛБЦА> — номер столбца в диапазоне, из которого будет возвращено значение;
<ОТСОРТИРОВАНО> — это очень важный параметр, который отвечает на вопрос, а отсортирован ли по возрастанию первый столбец диапазона <ГДЕ>. В случае, если массив отсортирован, мы указываем значение ИСТИНА (TRUE) или 1, в противном случае — ЛОЖЬ (FALSE) или 0. В случае, если данный параметр опущен, он по умолчанию становится равным 1.
Держу пари, что многие из тех, кто знает функцию ВПР как облупленную, прочитав описание четвёртого параметра, могут почувствовать себя неуютно, так как они привыкли видеть его в несколько ином виде: обычно там идёт речь о точном соответствии при поиске (ЛОЖЬ или 0) либо же о диапазонном просмотре (ИСТИНА или 1).
Вот сейчас надо напрячься и читать следующий абзац несколько раз, пока не прочувствуете смысл сказанного до конца. Там важно каждое слово. Примеры помогут разобраться.
Как же конкретно работает формула ВПР
- Вид формулы I. Если последний параметр опущен или указан равным 1, то ВПР предполагает, что первый столбец отсортирован по возрастанию, поэтому поиск останавливается на той строке, которая непосредственно предшествует строке, в которой находится значение, превышающее искомое. Если такой строки не найдено, то возвращается последняя строка диапазона.
- Вид формулы II. Если последний параметр указан равным 0, то ВПР последовательно просматривает первый столбец массива и сразу останавливает поиск, когда найдено первое точное соответствие с параметром <ЧТО>, в противном случае возвращается код ошибки #Н/Д (#N/A).
Схемы работы формул
ВПР тип I
ВПР тип II
Следствия для формул вида I
- Формулы можно использовать для распределения значений по диапазонам.
- Если первый столбец <ГДЕ> содержит повторяющиеся значения и правильно отсортирован, то будет возвращена последняя из строк с повторяющимися значениями.
- Если искать значение заведомо большее, чем может содержать первый столбец, то можно легко находить последнюю строку таблицы, что бывает довольно ценно.
- Данный вид вернёт ошибку #Н/Д, только если не найдёт значения меньше или равное искомому.
- Понять, что формула возвращает неправильные значения, в случае если ваш массив не отсортирован, довольно затруднительно.
Следствия для формул вида II
Если искомое значение встречается в первом столбце массива несколько раз, то формула выберет первую строку для последующего извлечения данных.
Производительность работы функции ВПР
Вы добрались до кульминационного места статьи. Казалось бы, ну какая разница, укажу ли я в качестве последнего параметра ноль или единицу? В основном все указывают, конечно же, ноль, так как это довольно практично: не надо заботиться о сортировке первого столбца массива, сразу видно, найдено значение или нет. Но если у вас на листе несколько тысяч формул ВПР (VLOOKUP), то вы заметите, что ВПР вида II работает медленно. При этом обычно все начинают думать:
- мне нужен более мощный компьютер;
- мне нужна более быстрая формула, например, многие знают про ИНДЕКС+ПОИСКПОЗ (INDEX+MATCH), которая якобы быстрее на жалкие 5–10%.
И мало кто думает, что стоит только начать использовать ВПР вида I и обеспечить любыми способами сортировку первого столбца, как скорость работы ВПР возрастёт в 57 раз. Пишу прописью — В ПЯТЬДЕСЯТ СЕМЬ РАЗ! Не на 57%, а на 5 700%. Данный факт я проверил вполне надёжно.
Секрет такой быстрой работы кроется в том, что на отсортированном массиве можно применять чрезвычайно эффективный алгоритм поиска, который носит название бинарного поиска (метод деления пополам, метод дихотомии). Так вот ВПР вида I его применяет, а ВПР вида II ищет без какой-либо оптимизации вообще. То же самое относится и к функции ПОИСКПОЗ (MATCH), которая включает в себя аналогичный параметр, а также и к функции ПРОСМОТР (LOOKUP), которая работает только на отсортированных массивах и включена в Excel ради совместимости с Lotus 1-2-3.
Недостатки формулы
Недостатки ВПР очевидны: во-первых, она ищет только в первом столбце указанного массива, а во-вторых, только справа от данного столбца. А как вы понимаете, вполне может случиться так, что столбец, содержащий необходимую информацию, окажется слева от столбца, в котором мы будем искать. Этого недостатка лишена уже упомянутая связка формул ИНДЕКС+ПОИСКПОЗ (INDEX+MATCH), что делает её наиболее гибким решением по извлечению данных из таблиц в сравнении с ВПР (VLOOKUP).
Некоторые аспекты применения формулы в реальной жизни
Диапазонный поиск
Классическая иллюстрация к диапазонному поиску — задача определения скидки по размеру заказа.
Поиск текстовых строк
Безусловно, ВПР ищет не только числа, но и текст. При этом надо принимать во внимание, что регистр символов формула не различает. Если использовать символы подстановки, то можно организовать нечёткий поиск. Есть два символа подстановки: «?» — заменяет один любой символ в текстовой строке, «*» — заменяет любое количество любых символов.
Борьба с пробелами
Часто поднимается вопрос, как решить проблему лишних пробелов при поиске. Если справочную таблицу ещё можно вычистить от них, то первый параметр формулы ВПР не всегда зависит от вас. Поэтому если риск засорения ячеек лишними пробелами присутствует, то можно применять для очистки функции СЖПРОБЕЛЫ (TRIM).
Разный формат данных
Если первый параметр функции ВПР ссылается на ячейку, которая содержит число, но которое хранится в ячейке в текстовом виде, а первый столбец массива содержит числа в правильном формате, то поиск будет неудачным. Возможна и обратная ситуация. Проблема легко решается переводом параметра 1 в необходимый формат:
=ВПР(−−D7; Продукты!$A$2:$C$5; 3; 0) — если D7 содержит текст, а таблица — числа;
=ВПР(D7 & «»); Продукты!$A$2:$C$5; 3; 0) — и наоборот.
Кстати, перевести текст в число можно сразу несколькими способами, выбирайте:
- Двойное отрицание —D7.
- Умножение на единицу D7*1.
- Сложение с нулём D7+0.
- Возведение в первую степень D7^1.
Перевод числа в текст производится через сцепку с пустой строкой, которая заставляет Excel преобразовать тип данных.
Как подавить выдачу #Н/Д
Это очень удобно делать при помощи функции ЕСЛИОШИБКА (IFERROR).
Например: =ЕСЛИОШИБКА( ВПР(D7; Продукты!$A$2:$C$5; 3; 0); «»).
Если ВПР вернёт код ошибки #Н/Д, то ЕСЛИОШИБКА его перехватит и подставит параметр 2 (в данном случае пустая строка), а если ошибки не произошло, то эта функция сделает вид, что её вообще нет, а есть только ВПР, вернувший нормальный результат.
Массив <ГДЕ>
Часто забывают ссылку массива сделать абсолютной, и при протягивании массив «плывёт». Помните, что вместо A2:C5 следует использовать $A$2:$C$5.
Хорошей идеей является размещение справочного массива на отдельном листе рабочей книги. Не путается под ногами, да и сохраннее будет.
Ещё более хорошей идеей будет объявление этого массива в виде именованного диапазона.
Многие пользователи при указании массива используют конструкцию вида A:C, указывая столбцы целиком. Этот подход имеет право на существование, так как вы избавлены от необходимости отслеживать тот факт, что ваш массив включает все необходимые строки. Если вы добавите строки на лист с первоначальным массивом, то диапазон, указанный как A:C, не придётся корректировать. Безусловно, эта синтаксическая конструкция заставляет Excel проводить несколько большую работу, чем при точном указании диапазона, но данными накладными расходами можно пренебречь. Речь идёт о сотых долях секунды.
Ну и на грани гениальности — оформить массив в виде умной таблицы.
Использование функции СТОЛБЕЦ для указания колонки извлечения
Если таблица, в которую вы извлекаете данные при помощи ВПР, имеет ту же самую структуру, что и справочная таблица, но просто содержит меньшее количество строк, то в ВПР можно использовать функцию СТОЛБЕЦ() для автоматического расчёта номеров извлекаемых столбцов. При этом все ВПР-формулы будут одинаковыми (с поправкой на первый параметр, который меняется автоматически)! Обратите внимание, что у первого параметра координата столбца абсолютная.
Создание составного ключа через &»|»&
Если возникает необходимость искать по нескольким столбцам одновременно, то необходимо делать составной ключ для поиска. Если бы возвращаемое значение было не текстовым (как тут в случае с полем «Код»), а числовым, то для этого подошла бы более удобная формула СУММЕСЛИМН (SUMIFS) и составной ключ столбца не потребовался бы вовсе.
Это моя первая статья для Лайфхакера. Если вам понравилось, то приглашаю вас посетить мой сайт, а также с удовольствием прочту в комментариях о ваших секретах использования функции ВПР и ей подобных. Спасибо.
Поиск значений в списке данных
Excel для Microsoft 365 Excel для Интернета Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше
Предположим, что вы хотите найти расширение телефона сотрудника, используя его номер эмблемы или правильную ставку комиссионных за объем продаж. Вы можете искать данные для быстрого и эффективного поиска определенных данных в списке, а также для автоматической проверки правильности данных. После поиска данных можно выполнить вычисления или отобразить результаты с возвращаемой величиной. Существует несколько способов поиска значений в списке данных и отображения результатов.
Что необходимо сделать
-
Точное совпадение значений по вертикали в списке
-
Подыыывка значений по вертикали в списке с помощью приблизительного совпадения
-
Подстановка значений по вертикали в списке неизвестного размера с использованием точного совпадения
-
Точное совпадение значений по горизонтали в списке
-
Подыыывка значений по горизонтали в списке с использованием приблизительного совпадения
-
Создание формулы подступа с помощью мастера подметок (только в Excel 2007)
Точное совпадение значений по вертикали в списке
Для этого можно использовать функцию ВLOOKUP или сочетание функций ИНДЕКС и НАЙТИПОЗ.
Примеры ВРОТ
Дополнительные сведения см. в этой информации.
Примеры индексов и совпадений
Что означает:
=ИНДЕКС(нужно вернуть значение из C2:C10, которое будет соответствовать ПОИСКПОЗ(первое значение «Капуста» в массиве B2:B10))
Формула ищет в C2:C10 первое значение, соответствующее значению «Ольга» (в B7), и возвращает значение в C7(100),которое является первым значением, которое соответствует значению «Ольга».
Дополнительные сведения см. в функциях ИНДЕКС иФУНКЦИЯ MATCH.
К началу страницы
Подыыывка значений по вертикали в списке с помощью приблизительного совпадения
Для этого используйте функцию ВЛВП.
Важно: Убедитесь, что значения в первой строке отсортировали в порядке возрастания.
В примере выше ВРОТ ищет имя учащегося, у которого 6 просмотров в диапазоне A2:B7. В таблице нет записи для 6 просмотров, поэтому ВРОТ ищет следующее самое высокое совпадение меньше 6 и находит значение 5, связанное с именем Виктор,и таким образом возвращает Его.
Дополнительные сведения см. в этой информации.
К началу страницы
Подстановка значений по вертикали в списке неизвестного размера с использованием точного совпадения
Для этого используйте функции СМЕЩЕНИЕ и НАЙТИВМЕСЯК.
Примечание: Используйте этот подход, если данные в диапазоне внешних данных обновляются каждый день. Вы знаете, что цена находится в столбце B, но вы не знаете, сколько строк данных возвращает сервер, а первый столбец не отсортировали по алфавиту.
C1 — это левые верхние ячейки диапазона (также называемые начальной).
MATCH(«Оранжевая»;C2:C7;0) ищет «Оранжевые» в диапазоне C2:C7. В диапазон не следует включать запускаемую ячейку.
1 — количество столбцов справа от начальной ячейки, из которых должно быть возвращено значение. В нашем примере возвращается значение из столбца D, Sales.
К началу страницы
Точное совпадение значений по горизонтали в списке
Для этого используйте функцию ГГПУ. См. пример ниже.
Г ПРОСМОТР ищет столбец «Продажи» и возвращает значение из строки 5 в указанном диапазоне.
Дополнительные сведения см. в сведениях о функции Г ПРОСМОТР.
К началу страницы
Подыыывка значений по горизонтали в списке с использованием приблизительного совпадения
Для этого используйте функцию ГГПУ.
Важно: Убедитесь, что значения в первой строке отсортировали в порядке возрастания.
В примере выше ГЛЕБ ищет значение 11000 в строке 3 указанного диапазона. Она не находит 11000, поэтому ищет следующее наибольшее значение меньше 1100 и возвращает значение 10543.
Дополнительные сведения см. в сведениях о функции Г ПРОСМОТР.
К началу страницы
Создание формулы подступа с помощью мастера подметок (толькоExcel 2007 )
Примечание: В Excel 2010 больше не будет надстройки #x0. Эта функция была заменена мастером функций и доступными функциями подменю и справки (справка).
В Excel 2007 создается формула подытов на основе данных на основе данных на основе строк и столбцов. Если вы знаете значение в одном столбце и наоборот, мастер под поисков помогает находить другие значения в строке. В формулах, которые он создает, используются индекс и MATCH.
-
Щелкните ячейку в диапазоне.
-
На вкладке Формулы в группе Решения нажмите кнопку Под поиск.
-
Если команда Подытов недоступна, вам необходимо загрузить мастер под надстройка подытогов.
Загрузка надстройки «Мастер подстройок»
-
Нажмите кнопку Microsoft Office , выберите Параметры Excel и щелкните категорию Надстройки.
-
В поле Управление выберите элемент Надстройки Excel и нажмите кнопку Перейти.
-
В диалоговом окне Доступные надстройки щелкните рядом с полем Мастер подстрок инажмите кнопку ОК.
-
Следуйте инструкциям мастера.
К началу страницы
Нужна дополнительная помощь?
В табличном редакторе Microsoft Excel множество различных формул и функций. Они позволяют сэкономить время и избежать ошибок – достаточно правильно написать формулу и подставить нужные значения.
В этой статье мы рассмотрим функцию ВПР (или VLOOKUP, что означает «вертикальный просмотр»). Функция ВПР помогает работать с данными из двух таблиц и подтягивать значения из одной в другую. Использовать ее удобно, когда нужно посчитать выручку или прикинуть бюджет, если в одной таблице указан прайс-лист, а в другой количество проданного товара.
Допустим, есть таблица с количеством проданного товара и таблица с ценами на эти товары
Необходимо к каждому товару из таблицы слева добавить цену из прайса справа.
Как создать функцию ВПР в Excel
Необходимая последовательность значений в функции называется синтаксис. Обычно функция начинается с символа равенства «=», затем идет название функции и аргументы в скобках.
Записываем формулу в столбик цены (С2). Это можно сделать двумя способами:
-
Выделить ячейку и вписать функцию.
-
Выделить ячейку → нажать на Fx (Shift +F3) → выбрать категорию «Ссылки и массивы» → выбрать функцию ВПР → нажать «ОК».
После этого открывается окно, где можно заполнить ячейки аргументов формулы.
Синтаксис функции ВПР выглядит так:
=ВПР(искомое значение;таблица;номер столбца;интервальный просмотр)
В нашем случае получится такая формула:
=ВПР(A2;$G$2:$H$11;2;0)
Аргументы функции ВПР
Сейчас разберемся что и куда писать.
Со знаком равенства «=» и названием «ВПР» все понятно. Поговорим об аргументах. Они записываются в скобках через точку с запятой или заполняются в ячейки в окне функции. Формула ВПР имеет 4 аргумента: искомое значение, таблица, номер столбца и интервальный просмотр.
Искомое значение – это название ячейки, из которой мы будем «подтягивать» данные. Формула ВПР ищет полное или частичное совпадение в другой таблице, из которой берет информацию.
В нашем случае выбираем ячейку «A2», в ней находится наименование товара. ВПР возьмет это название и будет искать аналогичную ячейку во второй таблице с прайсом.
=ВПР(A2;
Таблица – это диапазон ячеек, из которых мы будем «подтягивать» данные для искомого значения. В этом аргументе используем абсолютные ссылки. Это значит, что в формуле таблица будет выглядеть как «$G$2:$H$11» вместо «G2:H11». Знаки «$» можно поставить вручную, а можно выделить «G2:H11» внутри формулы и нажать F4. Если этого не сделать, таблица не зафиксируется в формуле и изменится при копировании.
В нашем случае – это таблица с прайсом. Формула будет искать в ней совпадение с ячейкой, которую указали в первом аргументе формулы – A2 (Кофе). Нажимаем F4 и делаем ссылку абсолютной.
=ВПР(A2;$G$2:$H$11
Номер столбца – это столбец таблицы, из которой нужно взять данные. Именно из него мы будем «подтягивать» результат.
-
Формула сканирует таблицу по вертикали.
-
Находит в самом левом столбце совпадение с искомым значением.
-
Смотрит в столбец напротив, очередность которого мы указываем в этом аргументе.
-
Передает данные в ячейку с формулой.
В нашем случае – это столбец с ценой продуктов в прайсе. Формула ищет искомое значение ячейки A2 (Кофе) в первом столбце прайса и «подтягивает» данные из второго столбца (потому что мы указали цифру 2) в ячейку с формулой.
=ВПР(A2;$G$2:$H$11;2
Интервальный просмотр – это параметр, который может принимать 2 значения: «истина» или «ложь». Истина обозначается в формуле цифрой 1 и означает приблизительное совпадение с искомым значением. Ложь обозначается цифрой 0 и подразумевает точное совпадение. Приблизительный поиск и критерий «истина» обычно используют при работе с числами, а точный и «ложь» – в работе с наименованиями.
В нашем случае искомое значение – это текстовое наименование. Поэтому используем точный поиск – ставим цифру 0 и закрываем скобку.
=ВПР(A2;$G$2:$H$11;2;0)
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Автозаполнение
В конце протягиваем формулу вниз до конца, в результате чего происходит автозаполнение.
Чтобы функция ВПР правильно сработала во время автозаполнения, искомое значение должно быть относительной ссылкой, а таблица – абсолютной.
-
В нашем случае искомое значение – A2. Это относительная ссылка на ячейку, потому что в ней нет знаков «$». Благодаря этому ссылка на искомое значение меняется относительно каждой строчки, когда происходит автозаполнение в другие ячейки: A2 → A3 → … → A11. Это удобно, когда необходимо повторить формулу на несколько строк, ведь ее не приходится писать заново.
-
Таблица зафиксирована абсолютной ссылкой «$G$2:$H$11». Это означает, что ссылки на ячейки не изменятся во время автозаполнения. Таким образом, расчет каждый раз будет корректным и опираться на таблицу.
ВПР и приблизительный интервальный просмотр
В предыдущем примере мы «подтягивали» значения из таблицы, используя точный интервальный просмотр. Он подходит для работы с наименованиями. Теперь разберем ситуацию, когда может понадобиться приблизительный интервальный просмотр.
Задача. В магазин привезли товар. Необходимо присвоить каждому товару размер партии, опираясь на его количество.
Товары такие же, как и в первом примере, но задача изменилась: нужно привязать формулу не к наименованию, а к количеству
Решение. Заполняем формулу ВПР в ячейке «Партия», как было показано в предыдущем примере.
Разница в том, что теперь искомое значение – число, а интервальный просмотр – истина, что означает приблизительный поиск. Получается вот такой результат:
Что произошло? Аргумент «интервальный просмотр» имеет значение 1. Это значит, что формула ВПР ищет в таблице ближайшее меньшее искомое значение.
В нашем случае количество товара «Кофе» – 380. ВПР берет это число в виде искомого значения, после чего ищет ближайшее меньшее в соседней таблице – число 300. В конце функция «подтягивает» данные из столбца напротив («Крупная»). Если количество товара «Кофе» = 340 – это «Крупная партия». Важно, чтобы крайний левый столбец таблицы, которая указана в формуле, был отсортирован по возрастанию. В противном случае ВПР не сработает.
Значения и данные во второй таблице отсортированы по убыванию – ВПР не работает
Итоги
-
Функция ВПР означает вертикальный просмотр. Она просматривает крайний левый столбец таблицы сверху вниз.
-
Синтаксис функции: =ВПР(искомое значение;таблица;номер столбца;интервальный просмотр).
-
Функцию можно вписать вручную или в специальном окне (Shift + F3).
-
Искомое значение – относительная ссылка, а таблица – абсолютная.
-
Интервальный просмотр может искать точное или приблизительное совпадение с искомым значением.
-
Приблизительный поиск и критерий «истина» обычно используют при работе с числами, а точный и «ложь» – в работе с наименованиями.
-
Порядок работы с функцией подходит для Гугл-таблиц.
Функция ПОИСК() в MS EXCEL
Смотрите также из таблицы по изменить скелет нашей продажам. просмотра в процессе есть заголовок столбцаSEARCH
Синтаксис функции
=ПСТР(A4;1;НАЙТИ(» №»;A4;1)-1) текста «просматриваемый_текст», а
учета регистра или компьютере язык понедоступна, необходимо загрузить
К началу страницы ВПР. можно использовать функциюА2А2
Функция ПОИСК(), английский вариант определенному месяцу (Июню). формулы: функцию ВПРНапример, как эффектно мы поиска. В третьем или название строки.(ПОИСК) в том,Выделяет текст от позиции
не от значения использовать подстановочные знаки, умолчанию влияет на надстройка мастера подстановок.Для выполнения этой задачиК началу страницы ВПР или сочетаниесодержится фамилия ивведена строка Первый SEARCH(), находит первое Далее функции МАКС заменить ГПР, а отобразили месяц, в аргументе функции ВПР
А в ячейке что они имеют 1 до знака
аргумента «нач_позиция». воспользуйтесь функцией ПОИСК возвращаемое значение указаннымЗагрузка надстройки мастера подстановок используется функция ГПР.
Примеры
Для выполнения этой задачи функций ИНДЕКС и имя «Иванов Иван», канал — лучший.
вхождение одной текстовой осталось только выбрать функция СТОЛБЕЦ заменяется котором была максимальная должен указываться номер D1 формула поиска 3-й дополнительный аргумент. «№» в ячейкеСкопируйте образец данных из
или ПОИСКБ. ниже образом.Нажмите кнопкуВажно: используются функции СМЕЩ ПОИСКПОЗ. то формула =ЛЕВСИМВ(A2;ПОИСК(СИМВОЛ(32);A2)-1)
Формула =ПОИСК(СИМВОЛ(32);A2) вернет строки в другой максимальное значение из на СТРОКА. продажа, с помощью столбца, из которого должна возвращать результат Вы можете использовать А4 («Переменный резистор») следующей таблицы иЕсли в качестве аргументаФункция НАЙТИ при подсчетеMicrosoft Office Значения в первой и ПОИСКПОЗ.
Дополнительные сведения см. в извлечет фамилию, а 7, т.к. символ строке и возвращает этого массива.Это позволит нам узнать второй формулы. Не следует взять значение
Функция НАЙТИ() vs ПОИСК()
вычисления соответствующего значения. данный аргумент, чтобыПеременный резистор вставьте их в «искомый_текст» задана пустая всегда рассматривает каждый, а затем — строке должны бытьПримечание:
Связь с функциями ЛЕВСИМВ(), ПРАВСИМВ() и ПСТР()
разделе, посвященном функции =ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(СИМВОЛ(32);A2)) — имя. пробела (код 32) начальную позицию найденной
Далее немного изменив первую какой объем и сложно заметить что на против строки После чего в задать позицию (начинаяФункция ячейку A1 нового строка («»), функция знак, как однобайтовый, кнопку отсортированы по возрастанию. Данный метод целесообразно использовать
excel2.ru
Поиск значений в списке данных
ВПР. Если между именем находится на 7-й строки. формулу с помощью какого товара была во второй формуле с именем Товар ячейке F1 сработает слева), с которойFIND листа Excel. Чтобы НАЙТИ выводит значение, так и двухбайтовый,Параметры ExcelВ приведенном выше примере при поиске данныхЧто означает: и фамилией содержится позиции.
В этой статье
ПОИСКискомый_текстпросматриваемая_строка функций ИНДЕКС и максимальная продажа в
мы использовали скелет 4. Но так вторая формула, которая
нужно начать поиск.(НАЙТИ) и функция отобразить результаты формул, равное первому знаку
как один знак,и выберите категорию функция ГПР ищет
в ежедневно обновляемом=ИНДЕКС(нужно вернуть значение из более одного пробела,
Формула =ПОИСК(«#???#»;»Артикул #123# ID»);[нач_позиция]) ПОИСКПОЗ, мы создали
Поиск значений в списке по вертикали по точному совпадению
определенный месяц. первой формулы без как нам заранее уже будет использоватьПримечание:
Примеры функции ВПР
SEARCH выделите их и в строке поиска
Примеры функций ИНДЕКС и ПОИСКПОЗ
независимо от выбранного
Надстройки значение 11 000 в строке 3 внешнем диапазоне данных. C2:C10, которое будет то для работоспособности
будет искать вИскомый_текст вторую для выводаЧтобы найти какой товар функции МАКС. Главная не известен этот значения ячеек B1Строка «o» найдена(ПОИСК) очень похожи
нажмите клавишу F2, (знак с номером, по умолчанию языка.
.
Поиск значений в списке по вертикали по приблизительному совпадению
в указанном диапазоне. Известна цена в
соответствовать ПОИСКПОЗ(первое значение вышеупомянутых формул используйте строке «Артикул #123# — текст, который требуется
названия строк таблицы обладал максимальным объемом структура формулы: ВПР(B1;A5:G14;СТОЛБЕЦ(B5:G14);0). номер мы с и D1 в в позиции 5. друг на друга. а затем — клавишу соответствующим аргументу «нач_позиция»Функция НАЙТИБ при подсчетеВ поле Значение 11 000 отсутствует, поэтому столбце B, но «Капуста» в массиве функцию СЖПРОБЕЛЫ(). ID» последовательность из найти. по зачиню ячейки.
продаж в определенном Мы заменили функцию помощью функции СТОЛБЕЦ
качестве критериев для
Поиск значений по вертикали в списке неизвестного размера по точному совпадению
Примечание: Этот пример демонстрирует ВВОД. При необходимости
или 1). рассматривает каждый двухбайтовыйУправление она ищет следующее неизвестно, сколько строк B2:B10))Предположим, что требуется найти 5 символов, котораяПросматриваемая_строка Название соответствующих строк месяце следует: МАКС на ПОИСКПОЗ,
создаем массив номеров поиска соответствующего месяца.Строка «o» найдена разницу.
измените ширину столбцов,Искомый_текст не может содержать знак как двавыберите значение максимальное значение, не данных возвратит сервер,Формула ищет в C2:C10
внутренний телефонный номер начинается и заканчивается — текст, в которой (товаров) выводим вВ ячейку B2 введите которая в первом столбцов для диапазонаТеперь узнаем, в каком в позиции 7Попробуйте использовать функцию чтобы видеть все подстановочные знаки.
знака, если включена
Поиск значений в списке по горизонтали по точному совпадению
Надстройки Excel превышающее 11 000, и возвращает а первый столбец
первое значение, соответствующее сотрудника по его на знак #. ищется F2. название месяца Июнь
аргументе использует значение, B4:G15. максимальном объеме и
(поиск начался с
Поиск значений в списке по горизонтали по приблизительному совпадению
FIND данные.
Если «искомый_текст» отсутствует в поддержка языка си нажмите кнопку 10 543.
не отсортирован в значению идентификационному номеру илиЧтобы найти позицию второгоИскомый_текстВНИМАНИЕ! При использовании скелета – это значение полученное предыдущей формулой.Это позволяет функции ВПР
в каком месяце позиции 6).(НАЙТИ), чтобы найти
Данные
Создание формулы подстановки с помощью мастера подстановок (только Excel 2007)
тексте «просматриваемый_текст», функции БДЦС и такойПерейтиДополнительные сведения см. в алфавитном порядке.Капуста узнать ставку комиссионного вхождения буквы «а»
. формулы для других будет использовано в Оно теперь выступает собрать целый массив была максимальная продажаУрок подготовлен для Вас положение подстроки вВладимир Егоров НАЙТИ и НАЙТИБ язык установлен по. разделе, посвященном функцииC1(B7), и возвращает
-
вознаграждения, предусмотренную за
-
в строке «мамаНач_позиция задач всегда обращайте качестве поискового критерия. в качестве критерия значений. В результате Товара 4.
-
командой сайта office-guru.ru строке. Как видноФормула возвращают значение ошибки
умолчанию. В противном
-
В области ГПР. — это левая верхняя значение в ячейке определенный объем продаж. мыла раму» используйте — позиция знака в внимание на второй
-
В ячейку D2 введите для поиска месяца. в памяти хранитсяЧтобы выполнить поиск поИсточник: http://www.excel-easy.com/examples/find-vs-search.html на рисунке, этаОписание
-
#ЗНАЧ!. случае функция НАЙТИБДоступные надстройкиК началу страницы ячейка диапазона (также C7 ( Необходимые данные можно формулу =ПОИСК(«а»;»мама мыла
-
просматриваемой_строке, с которой
и третий аргумент
support.office.com
НАЙТИ, НАЙТИБ (функции НАЙТИ, НАЙТИБ)
формулу: И в результате все соответствующие значения столбцам следует:Перевел: Антон Андронов функция чувствительна кРезультат
Описание
Если «нач_позиция» не больше рассматривает каждый знакустановите флажок рядомПримечание: называемая начальной ячейкой).100 быстро и эффективно
раму»;ПОИСК(«а»;»мама мыла раму»)+1). должен начинаться поиск.
-
поисковой функции ГПР.Для подтверждения после ввода функция ПОИСКПОЗ нам
-
каждому столбцу поВ ячейку B1 введитеАвтор: Антон Андронов регистру.=НАЙТИ(«В»;A2) нуля, функции НАЙТИ как один знак. с пунктом Поддержка надстройки «Мастер подстановок»Формула
-
). находить в списке Чтобы определить есть Если аргумент Количество охваченных строк формулы нажмите комбинацию возвращает номер столбца
-
строке Товар 4 значение Товара 4Имеем таблицу, в которойТеперь испытайте функциюПозиция первой «В» в и НАЙТИБ возвращаютК языкам, поддерживающим БДЦС,Мастер подстановок в Excel 2010ПОИСКПОЗ(«Апельсины»;C2:C7;0)Дополнительные сведения см. в
и автоматически проверять ли третье вхождениенач_позиция в диапазоне указанного клавиш CTRL+SHIFT+Enter, так
Синтаксис
2 где находится
(а именно: 360;
– название строки, записаны объемы продаж
-
SEARCH ячейке A2 значение ошибки #ЗНАЧ!.
-
относятся японский, китайскийи нажмите кнопку прекращена. Эта надстройкаищет значение «Апельсины»
-
разделах, посвященных функциям их правильность. Значения, буквы «м» вопущен, то предполагается в аргументе, должно как формула будет максимальное значение объема 958; 201; 605; которое выступит в
Замечания
-
определенных товаров в(ПОИСК), чтобы найти1Если «нач_позиция» больше, чем (упрощенное письмо), китайскийОК была заменена мастером в диапазоне C2:C7. ИНДЕКС и ПОИСКПОЗ. возвращенные поиском, можно
-
строке «мама мыла значение 1. совпадать с количеством выполнена в массиве. продаж для товара 462; 832). После качестве критерия. разных месяцах. Необходимо положение искомого текста
-
=НАЙТИ(«в»;A2) длина аргумента «просматриваемый_текст»,
-
(традиционное письмо) и. функций и функциями Начальную ячейку неК началу страницы
-
затем использовать в раму» используйте формулуВ аргументе строк в таблице.
-
А в строке 4. После чего чего функции МАКСВ ячейку D1 введите в таблице найти
-
в строке. ЭтаПозиция первой «в» в функции НАЙТИ и корейский.Следуйте инструкциям мастера. для работы со следует включать вДля выполнения этой задачи вычислениях или отображать =ЕСЛИ(ДЛСТР(ПОДСТАВИТЬ(«мама мыла раму»;»м»;»»;3))=ДЛСТР(«мамаискомый_текст А также нумерация формул появятся фигурные в работу включается остается только взять следующую формулу: данные, а критерием функция не чувствительна ячейке A2 НАЙТИБ, то возвращаетсяНАЙТИ(искомый_текст;просматриваемый_текст;[нач_позиция])К началу страницы ссылками и массивами. этот диапазон. используется функция ВПР. как результаты. Существует мыла раму»);»Нет третьего
Примеры
можно использовать подстановочные должна начинаться со скобки. функция ИНДЕКС, которая из этого массиваДля подтверждения после ввода поиска будут заголовки к регистру.15 значение ошибки #ЗНАЧ!.НАЙТИБ(искомый_текст;просматриваемый_текст;[нач_позиция])В этой статье описаныВ Excel 2007 мастер
1 |
||
Важно: |
||
несколько способов поиска |
вхождения м»;»Есть третье |
знаки — вопросительный |
второй строки! |
В ячейку F1 введите возвращает значение по |
максимальное число и |
формулы нажмите комбинацию |
строк и столбцов.Примечание: |
=НАЙТИ(«и»;A2;3) |
Аргумент «нач_позиция» можно использовать, |
Аргументы функций НАЙТИ и синтаксис формулы и подстановок создает формулу |
— это количество столбцов, |
Пример 2
Значения в первой |
||
значений в списке |
||
вхождение м») |
||
знак (?) и |
||
Скачать пример поиска значения |
вторую формулу: |
номеру сроки и |
возвратить в качестве |
горячих клавиш CTRL+SHIFT+Enter, Но поиск долженТекст «excel» имеетПозиция первой «и» в |
чтобы пропустить нужное |
НАЙТИБ описаны ниже. |
использование функций подстановки, основанную на которое нужно отсчитать строке должны быть |
данных и отображения |
Формула =ПОИСК(«клад?»;»докладная») вернет 3, |
звездочку (*). Вопросительный в столбце иСнова Для подтверждения нажмите столбца из определенного |
значения для ячейки |
support.office.com
Функции НАЙТИ и ПОИСК в Excel
так как формула быть выполнен отдельно позицию 11 в строке А2, начиная количество знаков. Предположим,Искомый_текстНАЙТИ данных листа, содержащих
- справа от начальной отсортированы по возрастанию. результатов. т.е. в слове знак соответствует любому строке Excel CTRL+SHIFT+Enter. в ее аргументах
- D1, как результат должна быть выполнена по диапазону строки данной строке, даже, с третьего знака например, что для — обязательный аргумент. Текст,
и названия строк и ячейки, чтобы получитьВ приведенном выше примереПоиск значений в списке «докладная» содержится слово знаку; звездочка —
- Читайте также: Поиск значенияВ первом аргументе функции диапазона. Так как вычисления формулы. в массиве. Если или столбца. То
если он используется8 поиска строки «МДС0093.МесячныеПродажи» который необходимо найти.НАЙТИБ столбцов. С помощью столбец, из которого
- функция ВПР ищет по вертикали по из 5 букв, любой последовательности знаков. в диапазоне таблицы ГПР (Горизонтальный ПРосмотр) у нас естьКак видно конструкция формулы все сделано правильно, есть будет использоваться немного в другомДанные используется функция НАЙТИ.
Просматриваемый_текств Microsoft Excel. мастера подстановок можно
возвращается значение. В имя первого учащегося точному совпадению первые 4 из Если нужно найти
Excel по столбцам указываем ссылку на
номер столбца 2,
проста и лаконична.
в строке формул
office-guru.ru
Поиск значения в столбце и строке таблицы Excel
только один из регистре («Excel»).Керамический изолятор №124-ТД45-87 Чтобы найти номер — обязательный аргумент. Текст,Функции НАЙТИ и НАЙТИБ найти остальные значения этом примере значение с 6 пропусками вПоиск значений в списке которых клад (начиная в тексте вопросительный и строкам ячейку с критерием а номер строки На ее основе появятся фигурные скобки. критериев. Поэтому здесь
Поиск значений в таблице Excel
ФункцияМедная пружина №12-671-6772 первого вхождения «М» в котором нужно находят вхождение одной
в строке, если возвращается из столбца диапазоне A2:B7. Учащихся
по вертикали по с третьей буквы знак или звездочку,По сути содержимое диапазона для поиска. Во в диапазоне где можно в похожийВ ячейку F1 введите нельзя применить функциюSEARCHПеременный резистор №116010 в описательную часть найти искомый текст. текстовой строки в известно значение в D с приблизительному совпадению слова докладная).
Поиск значения в строке Excel
следует поставить перед нас вообще не втором аргументе указана хранятся названия месяцев способ находить для
вторую формулу: ИНДЕКС, а нужна
- (ПОИСК) более универсальна.Формула текстовой строки, задайтеНачальная_позиция другую и возвращают
- одном столбце, иПродажи
- 6Поиск значений по вертикалиФункция НАЙТИ() учитывает РЕгиСТР ними тильду (~). интересует, нам нужен ссылка на просматриваемый в любые случаи определенного товара иСнова Для подтверждения нажмите
- специальная формула. Вы можете использовать
- Описание (результат) значение аргумента «нач_позиция»
— необязательный аргумент. Знак, начальную позицию искомой наоборот. В формулах,. пропусками в таблице нет,
Принцип действия формулы поиска значения в строке Excel:
в списке неизвестного букв и неЕсли искомый_текст не найден, просто счетчик строк. диапазон таблицы. Третий будет 1. Тогда другие показатели. Например, комбинацию клавиш CTRL+SHIFT+Enter.Для решения данной задачи подстановочные символы, когдаРезультат равным 8, чтобы с которого нужно строки относительно первого которые создает мастерК началу страницы поэтому функция ВПР размера по точному допускает использование подстановочных возвращается значение ошибки То есть изменить аргумент генерирует функция нам осталось функцией
минимальное или среднееНайдено в каком месяце проиллюстрируем пример на применяете её.=ПСТР(A2;1;НАЙТИ(» №»;A2;1)-1) поиск в той начать поиск. Первый знака второй строки. подстановок, используются функцииДля выполнения этой задачи ищет первую запись совпадению знаков. Для поиска #ЗНАЧ! аргументы на: СТРОКА(B2:B11) СТРОКА, которая создает ИНДЕКС получить соответственное значение объема продаж
и какая была схематической таблице, котораяПримечание:Выделяет текст от позиции части текста, которая знак в текстеВажно: ИНДЕКС и ПОИСКПОЗ. используется функция ГПР. со следующим максимальнымПоиск значений в списке без учета регистра,Функция ПОИСК() не учитывает или СТРОКА(С2:С11) – в памяти массив значение из диапазона используя для этого наибольшая продажа Товара соответствует выше описаннымВопросительный знак (?)
Как получить заголовки столбцов по зачиню одной ячейки?
1 до знака является серийным номером, «просматриваемый_текст» имеет номер Щелкните ячейку в диапазоне. См. пример ниже. значением, не превышающим по горизонтали по а также для РЕгиСТР букв. Для это никак не номеров строк из B4:G4 – Февраль функции МИН или 4 на протяжении условиям. соответствует ровно одному «№» в строке не производился. Функция 1. Если номерЭти функции могут бытьНа вкладкеФункция ГПР выполняет поиск 6. Она находит точному совпадению поиска с использованием поиска с учетом повлияет на качество 10 элементов. Так (второй месяц). СРЗНАЧ. Вам ни двух кварталов.Лист с таблицей для символу. Звездочка (*) («Керамический изолятор») НАЙТИ начинает со опущен, он полагается доступны не наФормулы по столбцу значение 5 и возвращаетПоиск значений в списке подстановочных знаков пользуйтесь регистра следует воспользоваться формулы. Главное, что
как в табличной
Поиск значения в столбце Excel
что не препятствует,В первом аргументе функции поиска значений по соответствует ряду символовКерамический изолятор знака 8, находит равным 1. всех языках.в группеПродажи
связанное с ним по горизонтали по функцией ПОИСК(). функцией НАЙТИ(). в этих диапазонах
части у насВторым вариантом задачи будет чтобы приведенный этот ВПР (Вертикальный ПРосмотр)
- вертикали и горизонтали: (от нуля и=ПСТР(A3;1;НАЙТИ(» №»;A3;1)-1) искомый_текст в следующемФункции НАЙТИ и НАЙТИБ
- Функция НАЙТИ предназначена дляРешения
- и возвращает значение имя приблизительному совпадениюФункция ПОИСК() может бытьФормула =ПОИСК(«к»;»Первый канал») вернет по 10 строк, находится 10 строк. поиск по таблице
- скелет формулы применить указывается ссылка на
- Над самой таблицей расположена более).
Принцип действия формулы поиска значения в столбце Excel:
Выделяет текст от позиции знаке и возвращает работают с учетом языков с однобайтовойвыберите команду из строки 5 вАлексейСоздание формулы подстановки с использована совместно с 8, т.к. буква как и вДалее функция ГПР поочередно с использованием названия с использованием более ячейку где находится строка с результатами.
Еще одна интересная особенность 1 до знака число 9. Функция регистра и не кодировкой, а функцияПодстановка указанном диапазоне.. помощью мастера подстановок функциями ЛЕВСИМВ(), ПРАВСИМВ()
к находится на таблице. И нумерация используя каждый номер месяца в качестве сложных функций для критерий поиска. Во В ячейку B1 функций «№» в ячейке НАЙТИ всегда возвращает
позволяют использовать подстановочные НАЙТИБ — для.Дополнительные сведения см. вДополнительные сведения см. в (только Excel 2007) и ПСТР(). 8-й позиции слева. начинается со второй строки создает массив критерия. В такие реализации максимально комфортного втором аргументе указывается водим критерий для
FIND А3 («Медная пружина») номер знака, считая
знаки. Если необходимо языков с двухбайтовойЕсли команда разделе, посвященном функции
разделе, посвященном функцииДля решения этой задачиНапример, в ячейкеПусть в ячейке строки! соответственных значений продаж случаи мы должны анализа отчета по диапазон ячеек для поискового запроса, то(НАЙТИ) иМедная пружина от левого края выполнить поиск без кодировкой. Заданный наПодстановка
exceltable.com
ГПР.
Skip to content
В статье предлагается несколько различных формул для выполнения поиска в двумерном массиве значений Excel. Просмотрите эти варианты и выберите наиболее для вас подходящий.
При поиске данных в электронных таблицах Excel чаще всего вы будете искать вертикально в столбцах или горизонтально в строках. Но иногда вам нужно просматривать сразу два условия – как строки, так и столбцы. Другими словами, вы стремитесь найти значение на пересечении определенной строки и столбца. Это называется матричным поиском (также известным как двумерный или поиск в диапазоне). Далее показано, как это можно сделать различными способами.
- Поиск в массиве при помощи ИНДЕКС ПОИСКПОЗ
- Формула ВПР и ПОИСКПОЗ для поиска в диапазоне
- Функция ПРОСМОТРX для поиска в строках и столбцах
- Формула СУММПРОИЗВ для поиска по строке и столбцу
- Поиск в матрице с именованными диапазонами
Поиск в массиве при помощи ИНДЕКС ПОИСКПОЗ
Самый популярный способ выполнить двусторонний поиск в Excel — использовать комбинацию ИНДЕКС с двумя ПОИСКПОЗ. Это разновидность классической формулы ПОИСКПОЗ ИНДЕКС , к которой вы добавляете еще одну функцию ПОИСКПОЗ, чтобы получить номера строк и столбцов:
ИНДЕКС( массив_данных ; ПОИСКПОЗ( значение_вертикальное ; диапазон_поиска_столбец ; 0), ПОИСКПОЗ( значение_горизонтальное ; диапазон_поиска_строка ; 0))
В этом способе, как и во всех остальных, мы используем поиск по двум условиям. Первое из них должно обнаружить совпадение в определенном столбце (в заголовках строк), а второе – в определенной строке (то есть, в заголовках столбцов). В результате мы имеем строку и столбец, которые соответствуют заданным условиям. А на пересечении их как раз и будут находиться искомые данные.
В качестве примера составим формулу для получения количества проданного товара за определённый период времени из таблицы, которую вы можете видеть ниже. Для начала определим все аргументы:
- Массив_данных — B2:E11 (ячейки данных, не включая заголовки строк и столбцов)
- Значение_вертикальное — H1 (целевой товар)
- Диапазон_поиска_столбец – A2:A11 (заголовки строк: названия напитков)
- Значение_горизонтальное — H2 (целевой период)
- Диапазон_поиска_строка — B1:E1 (заголовки столбцов: временные периоды)
Соедините все аргументы вместе, и вы получите следующую формулу для поиска числа в диапазоне:
=ИНДЕКС(B2:E11; ПОИСКПОЗ(H1;A2:A11;0); ПОИСКПОЗ(H2;B1:E1;0))
Как работает эта формула?
Хотя на первый взгляд это может показаться немного сложным, логика здесь простая. Функция ИНДЕКС извлекает значение из массива данных на основе номеров строк и столбцов, а две функции ПОИСКПОЗ предоставляют ей эти номера:
ИНДЕКС( B2:E11; номер_строки ; номер_столбца )
Здесь мы используем способность ПОИСКПОЗ возвращать относительную позицию значения в искомом массиве .
Итак, чтобы получить номер строки, мы ищем нужный нам товар (H1) в заголовках строк (A2:A11):
ПОИСКПОЗ(H1;A2:A11;0)
Чтобы получить номер столбца, мы ищем нужную нам неделю (H2) в заголовках столбцов (B1:E1):
ПОИСКПОЗ(H2;B1:E1;0)
В обоих случаях мы ищем точное совпадение, присваивая третьему аргументу значение 0.
В этом примере первое ПОИСКПОЗ возвращает 2, потому что нужный товар (Sprite) находится в ячейке A3, которая является второй по счёту в диапазоне A2:A11. Второй ПОИСКПОЗ возвращает 3, так как «Неделя 3» находится в ячейке D1, которая является третьей ячейкой в B1:E1.
С учетом вышеизложенного формула сводится к:
ИНДЕКС(B2:E11; 2 ; 3 )
Она возвращает число на пересечении второй строки и третьего столбца в матрице B2:E4, то есть в ячейке D3.
Думаю, вы понимаете, что аналогичным образом можно производить поиск в двумерном массиве Excel не только числа, но и текста. Тип данных здесь не имеет значения.
Формула ВПР и ПОИСКПОЗ для поиска в диапазоне
Другой способ выполнить матричный поиск в Excel — использовать комбинацию функций ВПР и ПОИСКПОЗ:
ВПР( значение_вертикальное ; массив_данных ; ПОИСКПОЗ( значение_горизонтальное , диапазон_поиска_строка , 0), ЛОЖЬ)
Для нашего образца таблицы формула принимает следующий вид:
=ВПР(H1; A2:E11; ПОИСКПОЗ(H2;A1:E1;0); ЛОЖЬ)
Где:
- Массив_данных — B2:E11 (ячейки данных, не включая заголовки строк и столбцов)
- Значение_вертикальное — H1 (целевой товар)
- Значение_горизонтальное — H2 (целевой период)
- Диапазон_поиска_строка — А1:E1 (заголовки столбцов: временные периоды)
Основой формулы является функция ВПР, настроенная на точное совпадение (последний аргумент имеет значение ЛОЖЬ). Она ищет заданное значение (H1) в первом столбце массива (A2:E11) и возвращает данные из другого столбца в той же строке. Чтобы определить, из какого столбца вернуть значение, вы используете функцию ПОИСКПОЗ, которая также настроена на точное совпадение (последний аргумент равен 0):
ПОИСКПОЗ(H2;A1:E1;0)
ПОИСКПОЗ ищет текст из H2 в заголовках столбцов (A1:E1) и указывает относительное положение найденной ячейки. В нашем случае нужная неделя (3-я) находится в D1, которая является четвертой по счету в массиве поиска. Итак, число 4 идет в аргумент номер_столбца функции ВПР:
=ВПР(H1; A2:E11; 4; ЛОЖЬ)
Далее ВПР находит точное совпадение H1 со значением в A3 и возвращает значение из 4-го столбца в той же строке, то есть из ячейки D3.
Важное замечание! Чтобы формула работала корректно, диапазон_поиска (A2:E11) функции ВПР и диапазон_поиска (A1:E1) функции ПОИСКПОЗ должны иметь одинаковое количество столбцов. Иначе число, переданное в номер_столбца, будет неправильным (не будет соответствовать положению столбца в массиве данных).
Функция ПРОСМОТРX для поиска в строках и столбцах
Недавно Microsoft представила еще одну функцию в Excel, которая призвана заменить все существующие функции поиска, такие как ВПР, ГПР и ИНДЕКС+ПОИСКПОЗ. Помимо прочего, ПРОСМОТРX может смотреть на пересечение определенной строки и столбца:
ПРОСМОТРX( значение_вертикальное ; диапазон_поиска_столбец ; ПРОСМОТРX( значение_горизонтальное ; диапазон_поиска_строка ; массив_данных ))
Для нашего примера набора данных формула выглядит следующим образом:
=ПРОСМОТРX(H1; A2:A11; ПРОСМОТРX(H2; B1:E1; B2:E11))
Примечание. В настоящее время ПРОСМОТРX — это функция, доступная только подписчикам Office 365 и более поздних версий.
В формуле используется функция ПРОСМОТРX для возврата всей строки или столбца. Внутренняя функция ищет целевой период времени в строке заголовка и возвращает все значения для этой недели (в данном примере для 3-й). Эти значения переходят в аргумент возвращаемый_массив внешнего ПРОСМОТРX:
=ПРОСМОТРX(H1; A2:A11; {544:87:488:102:87:433:126:132:111:565})
Внешняя функция ПРОСМОТРX ищет нужный товар в заголовках столбцов и извлекает значение из той же позиции из возвращаемого_массива.
Формула СУММПРОИЗВ для поиска по строке и столбцу
Функция СУММПРОИЗВ чрезвычайно универсальна — она может делать множество вещей, выходящих за рамки ее предназначения, особенно когда речь идет об оценке нескольких условий.
Чтобы найти значение на пересечении определенных строки и столбца, используйте эту общую формулу:
СУММПРОИЗВ ( диапазон_поиска_столбец = значение_вертикальное ) * ( диапазон_поиска_строка = значение_горизонтальное), массив_данных )
Чтобы выполнить поиск данных в массиве по строке и столбцу в нашем наборе данных, формула выглядит следующим образом:
=СУММПРОИЗВ((A2:A11=H1)*(B1:E1=H2); B2:E11)
Приведенный ниже вариант также будет работать:
=СУММПРОИЗВ((A2:A11=H1)*(B1:E1=H2)*B2:E11)
Теперь поясним подробнее. В начале мы сравниваем два значения поиска с заголовками строк и столбцов (целевой товар в H1 со всеми наименованиями в A2: A11 и целевой период времени в H2 со всеми неделями в B1: E1):
(A2:A11=H1)*(B1:E1=H2)
Это дает нам два массива значений ИСТИНА и ЛОЖЬ, где ИСТИНА означает совпадения:
{ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ}) * ({ЛОЖЬ;ЛОЖЬ;ИСТИНА;ЛОЖЬ}
Операция умножения преобразует значения ИСТИНА и ЛОЖЬ в 1 и 0 и создает матрицу из 4 столбцов и 10 строк (строки разделяются двоеточием, а каждый столбец данных — точкой с запятой):
{0;0;0;0:0;0;1;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0}
Функция СУММПРОИЗВ умножает элементы приведенного выше массива на элементы B2:E4, находящихся в тех же позициях:
{0;0;0;0:0;0;1;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0; 0;0:0;0;0;0:0;0;0;0:0;0;0;0} * {455;345;544;366:65;77;87;56:766; 655;488;865:129;66;102;56:89;141;87;89:566;511;433;522:154; 144;126; 162:158;165;132;155:112;143;111; 125:677;466;565;766})
И поскольку умножение на ноль дает в результате ноль, остается только элемент, соответствующий 1 в первом массиве:
=СУММПРОИЗВ({0;0;0;0:0;0;87;0:0;0;0;0:0;0;0;0:0;0;0;0:0; 0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0})
Наконец, СУММПРОИЗВ складывает все элементы результирующего массива и возвращает значение 87.
Примечание . Если в вашей таблице несколько заголовков строк и/или столбцов с одинаковыми именами, итоговый массив будет содержать более одного числа, отличного от нуля. И все эти числа будут суммированы. В результате вы получите сумму значений, удовлетворяющую обоим критериям. Это то, что отличает формулу СУММПРОИЗВ от ПОИСКПОЗ и ВПР, которые возвращают только первое найденное совпадение.
Поиск в матрице с именованными диапазонами
Еще один достаточно простой способ поиска в массиве в Excel — использование именованных диапазонов. Рассмотрим пошагово:
Шаг 1. Назовите столбцы и строки
Самый быстрый способ назвать каждую строку и каждый столбец в вашей таблице:
- Выделите всю таблицу (в нашем случае A1:E11).
- На вкладке « Формулы » в группе « Определенные имена » щелкните « Создать из выделенного » или нажмите комбинацию клавиш Ctrl + Shift + F3.
- В диалоговом окне « Создание имени из выделенного » выберите « в строке выше » и « в столбце слева» и нажмите «ОК».
Это автоматически создает имена на основе заголовков строк и столбцов. Однако есть пара предостережений:
- Если ваши заголовки столбцов и/или строк являются числами или содержат определенные символы, которые не разрешены в именах Excel, то имена для таких столбцов и строк не будут созданы. Чтобы просмотреть список созданных имен, откройте Диспетчер имен (
Ctrl + F3
). Если некоторые имена отсутствуют, определите их вручную. - Если некоторые из ваших заголовков строк или столбцов содержат пробелы, то они будут заменены символами подчеркивания, например, Неделя_1.
Шаг 2. Создание формулы поиска по матрице
Чтобы получить значение из матрицы на пересечении определенной строки и столбца, просто введите одну из следующих общих формул в пустую ячейку:
=имя_строки имя_столбца
Или наоборот:
=имя_столбца имя_строки
Например, чтобы получить продажу Sprite в 3-й неделе, используйте выражение:
=Sprite неделя_3
То есть, имена диапазонов здесь разделены пробелом, который в данном случае является оператором пересечения массивов.
Если кому-то нужны более подробные инструкции, опишем весь процесс пошагово:
- В ячейке, в которой вы хотите отобразить результат, введите знак равенства (=).
- Начните вводить имя целевой строки, Sprite. После того, как вы введете пару символов, Excel отобразит все существующие имена, соответствующие вашему вводу. Дважды щелкните нужное имя, чтобы ввести его в формулу.
- После имени строки введите пробел , который в данном случае работает как оператор пересечения.
- Введите имя целевого столбца ( в нашем случае неделя_3 ).
- Как только будут введены имена строки и столбца, Excel выделит соответствующую строку и столбец в вашей таблице, и вы нажмете Enter, чтобы завершить ввод:
Ваш поиск нужной ячейки в массиве выполнен, найден результат 87.
Вот какими способами можно выполнять поиск в массиве значений – в строках и столбцах таблицы Excel. Я благодарю вас за чтение и надеюсь еще увидеть вас в нашем блоге.
Еще несколько материалов по теме: