Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Описание
В этой статье приведены пошаговые инструкции по поиску данных в таблице (или диапазоне ячеек) с помощью различных встроенных функций Microsoft Excel. Для получения одного и того же результата можно использовать разные формулы.
Создание образца листа
В этой статье используется образец листа для иллюстрации встроенных функций Excel. Рассматривайте пример ссылки на имя из столбца A и возвращает возраст этого человека из столбца C. Чтобы создать этот лист, введите указанные ниже данные в пустой лист Excel.
Введите значение, которое вы хотите найти, в ячейку E2. Вы можете ввести формулу в любую пустую ячейку на том же листе.
A |
B |
C |
D |
E |
||
1 |
Имя |
Правитель |
Возраст |
Поиск значения |
||
2 |
Анри |
501 |
Плот |
Иванов |
||
3 |
Стэн |
201 |
19 |
|||
4 |
Иванов |
101 |
максималь |
|||
5 |
Ларри |
301 |
составляет |
Определения терминов
В этой статье для описания встроенных функций Excel используются указанные ниже условия.
Термин |
Определение |
Пример |
Массив таблиц |
Вся таблица подстановки |
A2: C5 |
Превышающ |
Значение, которое будет найдено в первом столбце аргумента «инфо_таблица». |
E2 |
Просматриваемый_массив |
Диапазон ячеек, которые содержат возможные значения подстановки. |
A2: A5 |
Номер_столбца |
Номер столбца в аргументе инфо_таблица, для которого должно быть возвращено совпадающее значение. |
3 (третий столбец в инфо_таблица) |
Ресулт_аррай |
Диапазон, содержащий только одну строку или один столбец. Он должен быть такого же размера, что и просматриваемый_массив или Лукуп_вектор. |
C2: C5 |
Интервальный_просмотр |
Логическое значение (истина или ложь). Если указано значение истина или опущено, возвращается приближенное соответствие. Если задано значение FALSE, оно будет искать точное совпадение. |
ЛОЖЬ |
Топ_целл |
Это ссылка, на основе которой вы хотите основать смещение. Топ_целл должен ссылаться на ячейку или диапазон смежных ячеек. В противном случае функция СМЕЩ возвращает #VALUE! значение ошибки #ИМЯ?. |
|
Оффсет_кол |
Число столбцов, находящегося слева или справа от которых должна указываться верхняя левая ячейка результата. Например, значение «5» в качестве аргумента Оффсет_кол указывает на то, что верхняя левая ячейка ссылки состоит из пяти столбцов справа от ссылки. Оффсет_кол может быть положительным (то есть справа от начальной ссылки) или отрицательным (то есть слева от начальной ссылки). |
Функции
LOOKUP ()
Функция Просмотр находит значение в одной строке или столбце и сопоставляет его со значением в той же позицией в другой строке или столбце.
Ниже приведен пример синтаксиса формулы подСТАНОВКи.
= Просмотр (искомое_значение; Лукуп_вектор; Ресулт_вектор)
Следующая формула находит возраст Марии на листе «образец».
= ПРОСМОТР (E2; A2: A5; C2: C5)
Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в векторе подстановки (столбец A). Формула затем соответствует значению в той же строке в векторе результатов (столбец C). Так как «Мария» находится в строке 4, функция Просмотр возвращает значение из строки 4 в столбце C (22).
Примечание. Для функции Просмотр необходимо, чтобы таблица была отсортирована.
Чтобы получить дополнительные сведения о функции Просмотр , щелкните следующий номер статьи базы знаний Майкрософт:
Использование функции Просмотр в Excel
ВПР ()
Функция ВПР или вертикальный просмотр используется, если данные указаны в столбцах. Эта функция выполняет поиск значения в левом столбце и сопоставляет его с данными в указанном столбце в той же строке. Функцию ВПР можно использовать для поиска данных в отсортированных или несортированных таблицах. В следующем примере используется таблица с несортированными данными.
Ниже приведен пример синтаксиса формулы ВПР :
= ВПР (искомое_значение; инфо_таблица; номер_столбца; интервальный_просмотр)
Следующая формула находит возраст Марии на листе «образец».
= ВПР (E2; A2: C5; 3; ЛОЖЬ)
Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в левом столбце (столбец A). Формула затем совпадет со значением в той же строке в Колумн_индекс. В этом примере используется «3» в качестве Колумн_индекс (столбец C). Так как «Мария» находится в строке 4, функция ВПР возвращает значение из строки 4 В столбце C (22).
Чтобы получить дополнительные сведения о функции ВПР , щелкните следующий номер статьи базы знаний Майкрософт:
Как найти точное совпадение с помощью функций ВПР или ГПР
INDEX () и MATCH ()
Вы можете использовать функции индекс и ПОИСКПОЗ вместе, чтобы получить те же результаты, что и при использовании поиска или функции ВПР.
Ниже приведен пример синтаксиса, объединяющего индекс и Match для получения одинаковых результатов поиска и ВПР в предыдущих примерах:
= Индекс (инфо_таблица; MATCH (искомое_значение; просматриваемый_массив; 0); номер_столбца)
Следующая формула находит возраст Марии на листе «образец».
= ИНДЕКС (A2: C5; MATCH (E2; A2: A5; 0); 3)
Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в столбце A. Затем он будет соответствовать значению в той же строке в столбце C. Так как «Мария» находится в строке 4, формула возвращает значение из строки 4 в столбце C (22).
Обратите внимание Если ни одна из ячеек в аргументе «число» не соответствует искомому значению («Мария»), эта формула будет возвращать #N/А.
Чтобы получить дополнительные сведения о функции индекс , щелкните следующий номер статьи базы знаний Майкрософт:
Поиск данных в таблице с помощью функции индекс
СМЕЩ () и MATCH ()
Функции СМЕЩ и ПОИСКПОЗ можно использовать вместе, чтобы получить те же результаты, что и функции в предыдущем примере.
Ниже приведен пример синтаксиса, объединяющего смещение и сопоставление для достижения того же результата, что и функция Просмотр и ВПР.
= СМЕЩЕНИЕ (топ_целл, MATCH (искомое_значение; просматриваемый_массив; 0); Оффсет_кол)
Эта формула находит возраст Марии на листе «образец».
= СМЕЩЕНИЕ (A1; MATCH (E2; A2: A5; 0); 2)
Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в столбце A. Формула затем соответствует значению в той же строке, но двум столбцам справа (столбец C). Так как «Мария» находится в столбце A, формула возвращает значение в строке 4 в столбце C (22).
Чтобы получить дополнительные сведения о функции СМЕЩ , щелкните следующий номер статьи базы знаний Майкрософт:
Использование функции СМЕЩ
Нужна дополнительная помощь?
Skip to content
В этом руководстве показано, как использовать ИНДЕКС и ПОИСКПОЗ в Excel и чем они лучше ВПР.
В нескольких недавних статьях мы приложили немало усилий, чтобы объяснить основы функции ВПР новичкам и предоставить более сложные примеры формул ВПР опытным пользователям. А теперь я постараюсь если не отговорить вас от использования ВПР, то хотя бы показать вам альтернативный способ поиска нужных значений в Excel.
- Краткий обзор функций ИНДЕКС и ПОИСКПОЗ
- Как использовать формулу ИНДЕКС ПОИСКПОЗ
- ИНДЕКС+ПОИСКПОЗ вместо ВПР?
- Поиск справа налево
- Двусторонний поиск в строках и столбцах
- ИНДЕКС ПОИСКПОЗ для поиска по нескольким условиям
- Как найти среднее, максимальное и минимальное значение
- Что делать с ошибками поиска?
Для чего это нужно? Потому что функция ВПР имеет множество ограничений, которые могут помешать вам получить желаемый результат во многих ситуациях. С другой стороны, комбинация ПОИСКПОЗ ИНДЕКС более гибкая и имеет много замечательных возможностей, которые во многих отношениях превосходят ВПР.
Функции Excel ИНДЕКС и ПОИСКПОЗ — основы
Поскольку целью этого руководства является демонстрация альтернативного способа выполнения поиска в Excel с использованием комбинации функций ИНДЕКС и ПОИСКПОЗ, мы не будем подробно останавливаться на их синтаксисе и использовании. Тем более, что это подробно рассмотрено в других статьях, ссылки на которые вы можете найти в конце этого руководства. Мы рассмотрим лишь минимум, необходимый для понимания общей идеи, а затем подробно рассмотрим примеры формул, раскрывающие все преимущества использования ПОИСКПОЗ и ИНДЕКС вместо ВПР.
Функция ИНДЕКС
Функция ИНДЕКС (в английском варианте – INDEX) возвращает значение в массиве на основе указанных вами номеров строк и столбцов. Синтаксис функции ИНДЕКС прост:
ИНДЕКС(массив,номер_строки,[номер_столбца])
Вот простое объяснение каждого параметра:
- массив — это диапазон ячеек, именованный диапазон или таблица.
- номер_строки — это номер строки в массиве, из которого нужно вернуть значение. Если этот аргумент опущен, требуется следующий – номер_столбца.
- номер_столбца — это номер столбца, из которого нужно вернуть значение. Если он опущен, требуется номер_строки.
Дополнительные сведения см. в статье Функция ИНДЕКС в Excel .
А вот пример формулы ИНДЕКС в самом простом виде:
=ИНДЕКС(A1:C10;2;3)
Формула выполняет поиск в ячейках с A1 по C10 и возвращает значение ячейки во 2-й строке и 3-м столбце, т. е. в ячейке C2.
Очень легко, правда? Однако при работе с реальными данными вы вряд ли когда-нибудь будете заранее знать, какие строки и столбцы вам нужны. Здесь вам пригодится ПОИСКПОЗ.
Функция ПОИСКПОЗ
Она ищет нужное значение в диапазоне ячеек и возвращает относительное положение этого значения в диапазоне.
Синтаксис функции ПОИСКПОЗ следующий:
ПОИСКПОЗ(искомое_значение, искомый_массив, [тип_совпадения])
- искомое_значение — числовое или текстовое значение, которое вы ищете.
- диапазон_поиска — диапазон ячеек, в которых будем искать.
- тип_совпадения — указывает, следует ли искать точное соответствие или наиболее близкое совпадение:
- 1 или опущено — находит наибольшее значение, которое меньше или равно искомому значению. Требуется сортировка массива поиска в порядке возрастания.
- 0 — находит первое значение, точно равное искомому значению. В комбинации ИНДЕКС/ПОИСКПОЗ вам почти всегда нужно точное совпадение, поэтому вы чаще всего устанавливаете третий аргумент вашей функции в 0.
- -1 — находит наименьшее значение, которое больше или равно искомому значению. Требуется сортировка массива поиска в порядке убывания.
Например, если диапазон B1:B3 содержит значения «яблоки», «апельсины», «лимоны», приведенная ниже формула возвращает число 3, поскольку «лимоны» — это третья по счету запись в этом диапазоне:
=ПОИСКПОЗ(«лимоны»;B1:B3;0)
Дополнительные сведения см . в статье Функция ПОИСКПОЗ в Excel .
На первый взгляд полезность функции ПОИСКПОЗ может показаться сомнительной. Кого волнует положение значения в диапазоне? Что мы действительно хотим определить, так это само значение.
Однако, относительная позиция искомого значения (т. е. номера строки и столбца, в которых оно находится) — это именно то, что нам нужно указать для аргументов номер_строки и номер_столбца функции ИНДЕКС. Как вы помните, ИНДЕКС может найти значение на пересечении заданной строки и столбца, но сама не может определить, какую именно строку и столбец ей нужно выбрать.
Вот поэтому совместное использование ИНДЕКС и ПОИСКПОЗ открывает перед нами массу возможностей для поиска в Excel.
Как использовать формулу ИНДЕКС ПОИСКПОЗ в Excel
Теперь, когда вы знаете основы, я считаю, что вы уже начали понимать, как ПОИСКПОЗ и ИНДЕКС работают вместе. Короче говоря, ИНДЕКС извлекает нужное значение по номерам столбцов и строк, а ПОИСКПОЗ предоставляет ей эти номера. Вот и все!
Для вертикального поиска вы используете функцию ПОИСКПОЗ только для определения номера строки, указывая диапазон столбцов непосредственно в самой формуле:
ИНДЕКС ( столбец для возврата значения ; ПОИСКПОЗ ( искомое значение ; столбец для поиска ; 0))
Все еще не совсем понимаете эту логику? Возможно, будет проще разобрать на примере. Предположим, у вас есть список национальных столиц и их население:
Чтобы найти население определенной столицы, скажем, Индии, используйте следующую формулу ПОИСКПОЗ ИНДЕКС:
=ИНДЕКС(C2:C10; ПОИСКПОЗ(“Индия”;A2:A10;0))
Теперь давайте проанализируем, что на самом деле делает каждый компонент этой формулы:
- Функция ПОИСКПОЗ ищет искомое значение «Индия» в диапазоне A2:A10 и возвращает число 2, поскольку это слово занимает второе место в массиве поиска.
- Этот номер поступает непосредственно в аргумент номер_строки функции ИНДЕКС, предписывая вернуть значение из этой строки.
Таким образом, приведенная выше формула превращается в ИНДЕКС(C2:C10;2), которая означает, что нужно искать в ячейках от C2 до C10 и извлекать значение из второй ячейки в этом диапазоне, то есть из C3, потому что мы начинаем отсчет со второй строки.
Но указывать название города в формуле не совсем правильно, так как для каждого нового поиска придется корректировать эту формулу. Введите его в какую-нибудь отдельную ячейку, скажем, F1, укажите ссылку на ячейку для ПОИСКПОЗ, и вы получите формулу динамического поиска:
=ИНДЕКС(C2:C10;ПОИСКПОЗ(F1;A2:A10;0))
Важное замечание! Количество строк в аргументе массив функции ИНДЕКС должно совпадать с количеством строк в аргументе просматриваемый_массив в ПОИСКПОЗ, иначе формула выдаст неверный результат.
Вы спросите: «А почему бы нам просто не использовать обычную формулу ВПР? Какой смысл тратить время на то, чтобы разобраться в хитросплетениях ИНДЕКС ПОИСКПОЗ в Excel?»
Вот как это будет выглядеть:
=ВПР(F1; A2:C10; 3; 0)
Конечно, так проще. Но этот наш элементарный пример предназначен только для демонстрационных целей, чтобы вы поняли, как именно функции ИНДЕКС и ПОИСКПОЗ работают вместе. Действительно, ВПР была бы здесь более уместна. Другие примеры, которые вы найдёте ниже, покажут вам реальную силу этой комбинации, которая легко справляется со многими сложными задачами, когда ВПР будет бессильна.
ИНДЕКС+ПОИСКПОЗ вместо ВПР?
Решая, какую функцию использовать для вертикального поиска, большинство знатоков Excel сходятся во мнении, что ПОИСКПОЗ+ИНДЕКС намного лучше, чем ВПР. Однако многие до сих пор остаются с ВПР, во-первых, потому что это проще, а, во-вторых, потому что они не до конца понимают все преимущества использования формулы ПОИСКПОЗ ИНДЕКС в Excel. Без такого понимания никто не захочет тратить свое время на изучение более сложного синтаксиса.
Ниже я укажу на ключевые преимущества ИНДЕКС ПОИСКПОЗ перед ВПР, а уж вам решать, является ли это достойным дополнением к вашему арсеналу знаний в Excel.
4 основные причины использовать ИНДЕКС ПОИСКПОЗ вместо ВПР
- Поиск справа налево. Как известно любому образованному пользователю, ВПР не может искать влево. Это означает, что искомое значение всегда должно находиться в крайнем левом столбце таблицы. А извлекать нужное значение мы будем из столбца, который находится правее. ИНДЕКС+ПОИСКПОЗ может легко выполнять поиск влево! Здесь это показано в действии: Как выполнить поиск значения слева в Excel .
- Можно безопасно вставлять или удалять столбцы. Формулы ВПР не работают или выдают неверные результаты, когда новый столбец удаляется из таблицы поиска или добавляется в нее, поскольку синтаксис ВПР требует указания порядкового номера столбца, из которого вы хотите извлечь данные. Естественно, когда вы добавляете или удаляете столбцы, этот номер в формуле автоматически не меняется, а нужный столбец уже оказывается на новом месте.
С функциями ИНДЕКС и ПОИСКПОЗ вы указываете диапазон возвращаемых столбцов, а не номер одного из них. В результате вы можете вставлять и удалять столько столбцов, сколько хотите, не беспокоясь об обновлении каждой связанной с ними формулы.
- Нет ограничений на размер искомого значения. При использовании функции ВПР общая длина ваших критериев поиска не может превышать 255 символов, иначе вы получите ошибку #ЗНАЧ!. Таким образом, если ваш набор данных содержит длинные строки, ИНДЕКС ПОИСКПОЗ — единственное работающее решение.
- Более высокая скорость обработки. Если ваши таблицы относительно небольшие, вряд ли будет какая-то существенная разница в производительности Excel. Но если ваши рабочие листы содержат сотни или тысячи строк и, следовательно, сотни или тысячи формул, ИНДЕКС ПОИСКПОЗ будет работать намного быстрее, чем ВПР. Причина в том, что Excel будет обрабатывать только столбцы поиска и возврата, а не весь массив таблицы.
Влияние ВПР на производительность Excel может быть особенно заметным, если ваша книга содержит сложные формулы массива. Чем больше значений содержит ваш массив и чем больше формул массива содержится в книге, тем медленнее работает Excel.
ИНДЕКС ПОИСКПОЗ в Excel – примеры формул
Уяснив, почему все же стоит изучать ИНДЕКС ПОИСКПОЗ, давайте перейдем к самому интересному и посмотрим, как можно применить теоретические знания на практике.
Формула для поиска справа налево
Как уже упоминалось, ВПР не может получать значения слева от столбца поиска. Таким образом, если ваши значения поиска не находятся в самом левом столбце, нет никаких шансов, что формула ВПР принесет вам желаемый результат. Функция ПОИСКПОЗ ИНДЕКС в Excel более универсальна и не имеет особого значения, где расположены столбцы поиска и возврата.
Для этого примера мы добавим столбец «Ранг» слева от нашей основной таблицы и попытаемся выяснить, какое место занимает столица России по численности населения среди других перечисленных столиц.
Записав искомое значение в G1, используйте следующую формулу для поиска в C2:C10 и возврата соответствующего значения из A2:A10:
=ИНДЕКС(A2:A10; ПОИСКПОЗ(G1;C2:C10;0))
Совет. Если вы планируете использовать формулу ПОИСКПОЗ ИНДЕКС более чем для одной ячейки, обязательно зафиксируйте оба диапазона абсолютными ссылками (например, $A$2:$A$10 и $C$2:$C$10), чтобы они не изменялись при копировании формулы.
Двусторонний поиск в строках и столбцах
В приведенных выше примерах мы использовали ИНДЕКС ПОИСКПОЗ вместо классической функции ВПР, чтобы вернуть значение из точно указанного столбца. Но что, если вам нужно искать в нескольких строках и столбцах? То есть, сначала нужно найти подходящий столбец, а уж потом извлечь из него значение? Другими словами, что, если вы хотите выполнить так называемый матричный или двусторонний поиск?
Это может показаться сложным, но формула очень похожа на базовую функцию ПОИСКПОЗ ИНДЕКС в Excel, но с одним отличием.
Просто используйте две функции ПОИСКПОЗ, вложенных друг в друга: одну – для получения номера строки, а другую – для получения номера столбца.
ИНДЕКС(массив; ПОИСКПОЗ(значение_поиска1 ; столбец_поиска ; 0); ПОИСКПОЗ(значение_поиска2 ; столбец_поиска ; 0))
А теперь, пожалуйста, взгляните на приведенную ниже таблицу и давайте составим формулу двумерного поиска, чтобы найти население (в миллионах) в данной стране за данный год.
С целевой страной в G1 (значение_поиска1) и целевым годом в G2 (значение_поиска2) формула принимает следующий вид:
=ИНДЕКС(B2:D11; ПОИСКПОЗ(G1;A2:A11;0); ПОИСКПОЗ(G2;B1:D1;0))
Как работает эта формула?
Всякий раз, когда вам нужно понять сложную формулу Excel, разделите ее на более мелкие части и посмотрите, что делает каждая отдельная функция:
ПОИСКПОЗ(G1;A2:A11;0); – ищет в A2:A11 значение из ячейки G1 («США») и возвращает его позицию, которая равна 3.
ПОИСКПОЗ(G2;B1:D1;0) – просматривает диапазон B1:D1, чтобы получить позицию значения из ячейки G2 («2015»), которая равна 3.
Найденные выше номера строк и столбцов становятся соответствующими аргументами функции ИНДЕКС:
ИНДЕКС(B2:D11, 3, 3)
В результате вы получите значение на пересечении 3-й строки и 3-го столбца в диапазоне B2:D11, то есть из D4. Несложно?
ИНДЕКС ПОИСКПОЗ для поиска по нескольким условиям
Если у вас была возможность прочитать наши материалы по ВПР в Excel, вы, вероятно, уже протестировали формулу для ВПР с несколькими условиями . Однако существенным недостатком этого подхода является необходимость добавления вспомогательного столбца. Хорошей новостью является то, что функция ПОИСКПОЗ ИНДЕКС в Excel также может выполнять поиск по нескольким условиям без изменения или реструктуризации исходных данных!
Вот общая формула ИНДЕКС ПОИСКПОЗ с несколькими критериями:
{=ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ); 0))}
Примечание. Это формула массива , которую необходимо вводить с помощью сочетания клавиш Ctrl + Shift + Enter
.
Предположим, что в таблице ниже вы хотите найти значение на основе двух критериев: Покупатель и Товар.
Следующая формула ИНДЕКС ПОИСКПОЗ отлично работает:
=ИНДЕКС(C2:C10; ПОИСКПОЗ(1; (F1=A2:A10) * (F2=B2:B10); 0))
Где C2:C10 — это диапазон, из которого возвращается значение, F1 — это критерий1, A2:A10 — это диапазон для сравнения с критерием 1, F2 — это критерий 2, а B2:B10 — это диапазон для сравнения с критерием 2.
Не забудьте правильно ввести формулу, нажав Ctrl + Shift + Enter, и Excel автоматически заключит ее в фигурные скобки, как показано на скриншоте ниже:
Рис5
Если вы не хотите использовать формулы массива, добавьте в формулу в F4 еще одну функцию ИНДЕКС и завершите ее ввод обычным нажатием Enter:
=ИНДЕКС(C2:C10; ПОИСКПОЗ(1; ИНДЕКС((F1=A2:A10) * (F2=B2:B10); 0; 1); 0))
Разберем пошагово, как это работает.
Здесь используется тот же подход, что и в обычном сочетании ИНДЕКС ПОИСКПОЗ, где просматривается один столбец. Чтобы оценить несколько критериев, вы создаете два или более массива значений ИСТИНА и ЛОЖЬ, которые представляют совпадения и несовпадения для каждого отдельного критерия, а затем перемножаете соответствующие элементы этих массивов. Операция умножения преобразует ИСТИНА и ЛОЖЬ в 1 и 0 соответственно и создает массив, в котором единицы соответствуют строкам, которые удовлетворяют всем условиям. Функция ПОИСКПОЗ со значением поиска 1 находит первую «1» в массиве и передает ее позицию в ИНДЕКС, которая возвращает значение в этой позиции из указанного столбца.
Вторая формула без массива основана на способности функции ИНДЕКС работать с массивами. Второй вложенный ИНДЕКС имеет 0 в номер_строки , так что он будет передавать весь массив столбцов в ПОИСКПОЗ.
Среднее, максимальное и минимальное значение при помощи ИНДЕКС ПОИСКПОЗ
Microsoft Excel имеет специальные функции для поиска минимального, максимального и среднего значения в диапазоне. Но что, если вам нужно получить значение из другой ячейки, связанной с этими значениями? Например, получить название города с максимальным населением или узнать товар с минимальными продажами? В этом случае используйте функцию МАКС , МИН или СРЗНАЧ вместе с ИНДЕКС ПОИСКПОЗ.
Максимальное значение.
Предположим, нам нужно в списке городов найти столицу с самым большим населением. Чтобы найти наибольшее значение в столбце С и вернуть соответствующее ему значение из столбца В, находящееся в той же строке, используйте эту формулу:
=ИНДЕКС(B2:B10; ПОИСКПОЗ(МАКС(C2:C10); C2:C10; 0))
Скриншот с примером находится чуть ниже.
Минимальное значение
Теперь найдём город с самым маленьким населением в списке. Чтобы найти наименьшее число в столбце С и получить соответствующее ему значение из столбца В:
=ИНДЕКС(B2:B10; ПОИСКПОЗ(МИН(C2:C10); C2:C10; 0))
Ближайшее к среднему
Теперь мы находим город, население которого наиболее близко к среднему значению. Чтобы вычислить позицию, наиболее близкую к среднему значению показателя, рассчитанному из D2:D10, и получить соответствующее значение из столбца C, используйте следующую формулу:
=ИНДЕКС(B2:B10; ПОИСКПОЗ(СРЗНАЧ(C2:C10); C2:C10; -1 ))
В зависимости от того, как организованы ваши данные, укажите 1 или -1 для третьего аргумента (тип_совпадения) функции ПОИСКПОЗ:
- Если ваш столбец поиска (столбец D в нашем случае) отсортирован по возрастанию , поставьте 1. Формула вычислит наибольшее значение, которое меньше или равно среднему значению.
- Если ваш столбец поиска отсортирован по убыванию , введите -1. Формула вычислит наименьшее значение, которое больше или равно среднему значению.
- Если ваш массив поиска содержит значение , точно равное среднему, вы можете ввести 0 для точного совпадения. Никакой сортировки не требуется.
В нашем примере данные в столбце D отсортированы в порядке убывания, поэтому мы используем -1 для типа соответствия. В результате мы получаем «Токио», так как его население (13 189 000) является ближайшим, превышающим среднее значение (12 269 006).
Что делать с ошибками поиска?
Как вы, наверное, заметили, если формула ИНДЕКС ПОИСКПОЗ в Excel не может найти искомое значение, она выдает ошибку #Н/Д. Если вы хотите заменить это стандартное сообщение чем-то более информативным, оберните формулу ПОИСКПОЗ ИНДЕКС в функцию ЕСНД . Например:
=ЕСНД(ИНДЕКС(C2:C10; ПОИСКПОЗ(F1;A2:A10;0)); «Не найдено»)
И теперь, если кто-то вводит значение, которое не существует в диапазоне поиска, формула явно сообщит пользователю, что совпадений не найдено:
Если вы хотите перехватывать все ошибки, а не только #Н/Д, используйте функцию ЕСЛИОШИБКА вместо ЕСНД:
=ЕСЛИОШИБКА(ИНДЕКС(C2:C10; ПОИСКПОЗ(F1;A2:A10;0)); «Что-то пошло не так!»)
Пожалуйста, имейте в виду, что во многих ситуациях было бы не совсем правильно скрывать все такие ошибки, потому что они предупреждают вас о возможных проблемах в вашей формуле.
Итак, еще раз об основных преимуществах формулы ИНДЕКС ПОИСКПОЗ.
-
Возможен ли «левый» поиск?
-
Повлияет ли на результат вставка и удаление столбцов?
Вы можете вставлять и удалять столько столбцов, сколько хотите. На результат ИНДЕКС ПОИСКПОЗ это не повлияет.
-
Возможен ли поиск по строкам и столбцам?
Можно сначала найти подходящий столбец, а уж потом извлечь из него значение. Общий вид формулы:
ИНДЕКС(массив; ПОИСКПОЗ(значение_поиска1 ; столбец_поиска ; 0); ПОИСКПОЗ(значение_поиска2 ; столбец_поиска ; 0))
Подробную инструкцию смотрите здесь. -
Как сделать поиск ИНДЕКС ПОИСКПОЗ по нескольким условиям?
Можно выполнять поиск по двум или более условиям без добавления дополнительных столбцов. Вот формула массива, которая решит проблему:
{=ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ); 0))}
Вот как можно использовать ИНДЕКС и ПОИСКПОЗ в Excel. Я надеюсь, что наши примеры формул окажутся полезными для вас.
Вот еще несколько статей по этой теме:
Этот учебник рассказывает о главных преимуществах функций ИНДЕКС и ПОИСКПОЗ в Excel, которые делают их более привлекательными по сравнению с ВПР. Вы увидите несколько примеров формул, которые помогут Вам легко справиться со многими сложными задачами, перед которыми функция ВПР бессильна.
В нескольких недавних статьях мы приложили все усилия, чтобы разъяснить начинающим пользователям основы функции ВПР и показать примеры более сложных формул для продвинутых пользователей. Теперь мы попытаемся, если не отговорить Вас от использования ВПР, то хотя бы показать альтернативные способы реализации вертикального поиска в Excel.
Зачем нам это? – спросите Вы. Да, потому что ВПР – это не единственная функция поиска в Excel, и её многочисленные ограничения могут помешать Вам получить желаемый результат во многих ситуациях. С другой стороны, функции ИНДЕКС и ПОИСКПОЗ – более гибкие и имеют ряд особенностей, которые делают их более привлекательными, по сравнению с ВПР.
- Базовая информация об ИНДЕКС и ПОИСКПОЗ
- Используем функции ИНДЕКС и ПОИСКПОЗ в Excel
- Преимущества ИНДЕКС и ПОИСКПОЗ перед ВПР
- ИНДЕКС и ПОИСКПОЗ – примеры формул
- Как находить значения, которые находятся слева
- Вычисления при помощи ИНДЕКС и ПОИСКПОЗ
- Поиск по известным строке и столбцу
- Поиск по нескольким критериям
- ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА
Содержание
- Базовая информация об ИНДЕКС и ПОИСКПОЗ
- ИНДЕКС – синтаксис и применение функции
- ПОИСКПОЗ – синтаксис и применение функции
- Как использовать ИНДЕКС и ПОИСКПОЗ в Excel
- Почему ИНДЕКС/ПОИСКПОЗ лучше, чем ВПР?
- 4 главных преимущества использования ПОИСКПОЗ/ИНДЕКС в Excel:
- ИНДЕКС и ПОИСКПОЗ – примеры формул
- Как выполнить поиск с левой стороны, используя ПОИСКПОЗ и ИНДЕКС
- Вычисления при помощи ИНДЕКС и ПОИСКПОЗ в Excel (СРЗНАЧ, МАКС, МИН)
- О чём нужно помнить, используя функцию СРЗНАЧ вместе с ИНДЕКС и ПОИСКПОЗ
- Как при помощи ИНДЕКС и ПОИСКПОЗ выполнять поиск по известным строке и столбцу
- Поиск по нескольким критериям с ИНДЕКС и ПОИСКПОЗ
- ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА в Excel
Базовая информация об ИНДЕКС и ПОИСКПОЗ
Так как задача этого учебника – показать возможности функций ИНДЕКС и ПОИСКПОЗ для реализации вертикального поиска в Excel, мы не будем задерживаться на их синтаксисе и применении.
Приведём здесь необходимый минимум для понимания сути, а затем разберём подробно примеры формул, которые показывают преимущества использования ИНДЕКС и ПОИСКПОЗ вместо ВПР.
ИНДЕКС – синтаксис и применение функции
Функция INDEX (ИНДЕКС) в Excel возвращает значение из массива по заданным номерам строки и столбца. Функция имеет вот такой синтаксис:
INDEX(array,row_num,[column_num])
ИНДЕКС(массив;номер_строки;[номер_столбца])
Каждый аргумент имеет очень простое объяснение:
- array (массив) – это диапазон ячеек, из которого необходимо извлечь значение.
- row_num (номер_строки) – это номер строки в массиве, из которой нужно извлечь значение. Если не указан, то обязательно требуется аргумент column_num (номер_столбца).
- column_num (номер_столбца) – это номер столбца в массиве, из которого нужно извлечь значение. Если не указан, то обязательно требуется аргумент row_num (номер_строки)
Если указаны оба аргумента, то функция ИНДЕКС возвращает значение из ячейки, находящейся на пересечении указанных строки и столбца.
Вот простейший пример функции INDEX (ИНДЕКС):
=INDEX(A1:C10,2,3)
=ИНДЕКС(A1:C10;2;3)
Формула выполняет поиск в диапазоне A1:C10 и возвращает значение ячейки во 2-й строке и 3-м столбце, то есть из ячейки C2.
Очень просто, правда? Однако, на практике Вы далеко не всегда знаете, какие строка и столбец Вам нужны, и поэтому требуется помощь функции ПОИСКПОЗ.
ПОИСКПОЗ – синтаксис и применение функции
Функция MATCH (ПОИСКПОЗ) в Excel ищет указанное значение в диапазоне ячеек и возвращает относительную позицию этого значения в диапазоне.
Например, если в диапазоне B1:B3 содержатся значения New-York, Paris, London, тогда следующая формула возвратит цифру 3, поскольку «London» – это третий элемент в списке.
=MATCH("London",B1:B3,0)
=ПОИСКПОЗ("London";B1:B3;0)
Функция MATCH (ПОИСКПОЗ) имеет вот такой синтаксис:
MATCH(lookup_value,lookup_array,[match_type])
ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])
- lookup_value (искомое_значение) – это число или текст, который Вы ищите. Аргумент может быть значением, в том числе логическим, или ссылкой на ячейку.
- lookup_array (просматриваемый_массив) – диапазон ячеек, в котором происходит поиск.
- match_type (тип_сопоставления) – этот аргумент сообщает функции ПОИСКПОЗ, хотите ли Вы найти точное или приблизительное совпадение:
- 1 или не указан – находит максимальное значение, меньшее или равное искомому. Просматриваемый массив должен быть упорядочен по возрастанию, то есть от меньшего к большему.
- 0 – находит первое значение, равное искомому. Для комбинации ИНДЕКС/ПОИСКПОЗ всегда нужно точное совпадение, поэтому третий аргумент функции ПОИСКПОЗ должен быть равен 0.
- -1 – находит наименьшее значение, большее или равное искомому значению. Просматриваемый массив должен быть упорядочен по убыванию, то есть от большего к меньшему.
На первый взгляд, польза от функции ПОИСКПОЗ вызывает сомнение. Кому нужно знать положение элемента в диапазоне? Мы хотим знать значение этого элемента!
Позвольте напомнить, что относительное положение искомого значения (т.е. номер строки и/или столбца) – это как раз то, что мы должны указать для аргументов row_num (номер_строки) и/или column_num (номер_столбца) функции INDEX (ИНДЕКС). Как Вы помните, функция ИНДЕКС может возвратить значение, находящееся на пересечении заданных строки и столбца, но она не может определить, какие именно строка и столбец нас интересуют.
Как использовать ИНДЕКС и ПОИСКПОЗ в Excel
Теперь, когда Вам известна базовая информация об этих двух функциях, полагаю, что уже становится понятно, как функции ПОИСКПОЗ и ИНДЕКС могут работать вместе. ПОИСКПОЗ определяет относительную позицию искомого значения в заданном диапазоне ячеек, а ИНДЕКС использует это число (или числа) и возвращает результат из соответствующей ячейки.
Ещё не совсем понятно? Представьте функции ИНДЕКС и ПОИСКПОЗ в таком виде:
=INDEX(столбец из которого извлекаем,(MATCH (искомое значение,столбец в котором ищем,0))
=ИНДЕКС(столбец из которого извлекаем;(ПОИСКПОЗ(искомое значение;столбец в котором ищем;0))
Думаю, ещё проще будет понять на примере. Предположим, у Вас есть вот такой список столиц государств:
Давайте найдём население одной из столиц, например, Японии, используя следующую формулу:
=INDEX($D$2:$D$10,MATCH("Japan",$B$2:$B$10,0))
=ИНДЕКС($D$2:$D$10;ПОИСКПОЗ("Japan";$B$2:$B$10;0))
Теперь давайте разберем, что делает каждый элемент этой формулы:
- Функция MATCH (ПОИСКПОЗ) ищет значение «Japan» в столбце B, а конкретно – в ячейках B2:B10, и возвращает число 3, поскольку «Japan» в списке на третьем месте.
- Функция INDEX (ИНДЕКС) использует 3 для аргумента row_num (номер_строки), который указывает из какой строки нужно возвратить значение. Т.е. получается простая формула:
=INDEX($D$2:$D$10,3)
=ИНДЕКС($D$2:$D$10;3)
Формула говорит примерно следующее: ищи в ячейках от D2 до D10 и извлеки значение из третьей строки, то есть из ячейки D4, так как счёт начинается со второй строки.
Вот такой результат получится в Excel:
Важно! Количество строк и столбцов в массиве, который использует функция INDEX (ИНДЕКС), должно соответствовать значениям аргументов row_num (номер_строки) и column_num (номер_столбца) функции MATCH (ПОИСКПОЗ). Иначе результат формулы будет ошибочным.
Стоп, стоп… почему мы не можем просто использовать функцию VLOOKUP (ВПР)? Есть ли смысл тратить время, пытаясь разобраться в лабиринтах ПОИСКПОЗ и ИНДЕКС?
=VLOOKUP("Japan",$B$2:$D$2,3)
=ВПР("Japan";$B$2:$D$2;3)
В данном случае – смысла нет! Цель этого примера – исключительно демонстрационная, чтобы Вы могли понять, как функции ПОИСКПОЗ и ИНДЕКС работают в паре. Последующие примеры покажут Вам истинную мощь связки ИНДЕКС и ПОИСКПОЗ, которая легко справляется с многими сложными ситуациями, когда ВПР оказывается в тупике.
Почему ИНДЕКС/ПОИСКПОЗ лучше, чем ВПР?
Решая, какую формулу использовать для вертикального поиска, большинство гуру Excel считают, что ИНДЕКС/ПОИСКПОЗ намного лучше, чем ВПР. Однако, многие пользователи Excel по-прежнему прибегают к использованию ВПР, т.к. эта функция гораздо проще. Так происходит, потому что очень немногие люди до конца понимают все преимущества перехода с ВПР на связку ИНДЕКС и ПОИСКПОЗ, а тратить время на изучение более сложной формулы никто не хочет.
Далее я попробую изложить главные преимущества использования ПОИСКПОЗ и ИНДЕКС в Excel, а Вы решите – остаться с ВПР или переключиться на ИНДЕКС/ПОИСКПОЗ.
4 главных преимущества использования ПОИСКПОЗ/ИНДЕКС в Excel:
1. Поиск справа налево. Как известно любому грамотному пользователю Excel, ВПР не может смотреть влево, а это значит, что искомое значение должно обязательно находиться в крайнем левом столбце исследуемого диапазона. В случае с ПОИСКПОЗ/ИНДЕКС, столбец поиска может быть, как в левой, так и в правой части диапазона поиска. Пример: Как находить значения, которые находятся слева покажет эту возможность в действии.
2. Безопасное добавление или удаление столбцов. Формулы с функцией ВПР перестают работать или возвращают ошибочные значения, если удалить или добавить столбец в таблицу поиска. Для функции ВПР любой вставленный или удалённый столбец изменит результат формулы, поскольку синтаксис ВПР требует указывать весь диапазон и конкретный номер столбца, из которого нужно извлечь данные.
Например, если у Вас есть таблица A1:C10, и требуется извлечь данные из столбца B, то нужно задать значение 2 для аргумента col_index_num (номер_столбца) функции ВПР, вот так:
=VLOOKUP("lookup value",A1:C10,2)
=ВПР("lookup value";A1:C10;2)
Если позднее Вы вставите новый столбец между столбцами A и B, то значение аргумента придется изменить с 2 на 3, иначе формула возвратит результат из только что вставленного столбца.
Используя ПОИСКПОЗ/ИНДЕКС, Вы можете удалять или добавлять столбцы к исследуемому диапазону, не искажая результат, так как определен непосредственно столбец, содержащий нужное значение. Действительно, это большое преимущество, особенно когда работать приходится с большими объёмами данных. Вы можете добавлять и удалять столбцы, не беспокоясь о том, что нужно будет исправлять каждую используемую функцию ВПР.
3. Нет ограничения на размер искомого значения. Используя ВПР, помните об ограничении на длину искомого значения в 255 символов, иначе рискуете получить ошибку #VALUE! (#ЗНАЧ!). Итак, если таблица содержит длинные строки, единственное действующее решение – это использовать ИНДЕКС/ПОИСКПОЗ.
Предположим, Вы используете вот такую формулу с ВПР, которая ищет в ячейках от B5 до D10 значение, указанное в ячейке A2:
=VLOOKUP(A2,B5:D10,3,FALSE)
=ВПР(A2;B5:D10;3;ЛОЖЬ)
Формула не будет работать, если значение в ячейке A2 длиннее 255 символов. Вместо неё Вам нужно использовать аналогичную формулу ИНДЕКС/ПОИСКПОЗ:
=INDEX(D5:D10,MATCH(TRUE,INDEX(B5:B10=A2,0),0))
=ИНДЕКС(D5:D10;ПОИСКПОЗ(ИСТИНА;ИНДЕКС(B5:B10=A2;0);0))
4. Более высокая скорость работы. Если Вы работаете с небольшими таблицами, то разница в быстродействии Excel будет, скорее всего, не заметная, особенно в последних версиях. Если же Вы работаете с большими таблицами, которые содержат тысячи строк и сотни формул поиска, Excel будет работать значительно быстрее, при использовании ПОИСКПОЗ и ИНДЕКС вместо ВПР. В целом, такая замена увеличивает скорость работы Excel на 13%.
Влияние ВПР на производительность Excel особенно заметно, если рабочая книга содержит сотни сложных формул массива, таких как ВПР+СУММ. Дело в том, что проверка каждого значения в массиве требует отдельного вызова функции ВПР. Поэтому, чем больше значений содержит массив и чем больше формул массива содержит Ваша таблица, тем медленнее работает Excel.
С другой стороны, формула с функциями ПОИСКПОЗ и ИНДЕКС просто совершает поиск и возвращает результат, выполняя аналогичную работу заметно быстрее.
ИНДЕКС и ПОИСКПОЗ – примеры формул
Теперь, когда Вы понимаете причины, из-за которых стоит изучать функции ПОИСКПОЗ и ИНДЕКС, давайте перейдём к самому интересному и увидим, как можно применить теоретические знания на практике.
Как выполнить поиск с левой стороны, используя ПОИСКПОЗ и ИНДЕКС
Любой учебник по ВПР твердит, что эта функция не может смотреть влево. Т.е. если просматриваемый столбец не является крайним левым в диапазоне поиска, то нет шансов получить от ВПР желаемый результат.
Функции ПОИСКПОЗ и ИНДЕКС в Excel гораздо более гибкие, и им все-равно, где находится столбец со значением, которое нужно извлечь. Для примера, снова вернёмся к таблице со столицами государств и населением. На этот раз запишем формулу ПОИСКПОЗ/ИНДЕКС, которая покажет, какое место по населению занимает столица России (Москва).
Как видно на рисунке ниже, формула отлично справляется с этой задачей:
=INDEX($A$2:$A$10,MATCH("Russia",$B$2:$B$10,0))
=ИНДЕКС($A$2:$A$10;ПОИСКПОЗ("Russia";$B$2:$B$10;0))
Теперь у Вас не должно возникать проблем с пониманием, как работает эта формула:
- Во-первых, задействуем функцию MATCH (ПОИСКПОЗ), которая находит положение «Russia» в списке:
=MATCH("Russia",$B$2:$B$10,0))
=ПОИСКПОЗ("Russia";$B$2:$B$10;0))
- Далее, задаём диапазон для функции INDEX (ИНДЕКС), из которого нужно извлечь значение. В нашем случае это A2:A10.
- Затем соединяем обе части и получаем формулу:
=INDEX($A$2:$A$10;MATCH("Russia";$B$2:$B$10;0))
=ИНДЕКС($A$2:$A$10;ПОИСКПОЗ("Russia";$B$2:$B$10;0))
Подсказка: Правильным решением будет всегда использовать абсолютные ссылки для ИНДЕКС и ПОИСКПОЗ, чтобы диапазоны поиска не сбились при копировании формулы в другие ячейки.
Вычисления при помощи ИНДЕКС и ПОИСКПОЗ в Excel (СРЗНАЧ, МАКС, МИН)
Вы можете вкладывать другие функции Excel в ИНДЕКС и ПОИСКПОЗ, например, чтобы найти минимальное, максимальное или ближайшее к среднему значение. Вот несколько вариантов формул, применительно к таблице из предыдущего примера:
1. MAX (МАКС). Формула находит максимум в столбце D и возвращает значение из столбца C той же строки:
=INDEX($C$2:$C$10,MATCH(MAX($D$2:I$10),$D$2:D$10,0))
=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(МАКС($D$2:I$10);$D$2:D$10;0))
Результат: Beijing
2. MIN (МИН). Формула находит минимум в столбце D и возвращает значение из столбца C той же строки:
=INDEX($C$2:$C$10,MATCH(MIN($D$2:I$10),$D$2:D$10,0))
=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(МИН($D$2:I$10);$D$2:D$10;0))
Результат: Lima
3. AVERAGE (СРЗНАЧ). Формула вычисляет среднее в диапазоне D2:D10, затем находит ближайшее к нему и возвращает значение из столбца C той же строки:
=INDEX($C$2:$C$10,MATCH(AVERAGE($D$2:D$10),$D$2:D$10,1))
=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(СРЗНАЧ($D$2:D$10);$D$2:D$10;1))
Результат: Moscow
О чём нужно помнить, используя функцию СРЗНАЧ вместе с ИНДЕКС и ПОИСКПОЗ
Используя функцию СРЗНАЧ в комбинации с ИНДЕКС и ПОИСКПОЗ, в качестве третьего аргумента функции ПОИСКПОЗ чаще всего нужно будет указывать 1 или -1 в случае, если Вы не уверены, что просматриваемый диапазон содержит значение, равное среднему. Если же Вы уверены, что такое значение есть, – ставьте 0 для поиска точного совпадения.
- Если указываете 1, значения в столбце поиска должны быть упорядочены по возрастанию, а формула вернёт максимальное значение, меньшее или равное среднему.
- Если указываете -1, значения в столбце поиска должны быть упорядочены по убыванию, а возвращено будет минимальное значение, большее или равное среднему.
В нашем примере значения в столбце D упорядочены по возрастанию, поэтому мы используем тип сопоставления 1. Формула ИНДЕКС/ПОИСКПОЗ возвращает «Moscow», поскольку величина населения города Москва – ближайшее меньшее к среднему значению (12 269 006).
Как при помощи ИНДЕКС и ПОИСКПОЗ выполнять поиск по известным строке и столбцу
Эта формула эквивалентна двумерному поиску ВПР и позволяет найти значение на пересечении определённой строки и столбца.
В этом примере формула ИНДЕКС/ПОИСКПОЗ будет очень похожа на формулы, которые мы уже обсуждали в этом уроке, с одним лишь отличием. Угадайте каким?
Как Вы помните, синтаксис функции INDEX (ИНДЕКС) позволяет использовать три аргумента:
INDEX(array,row_num,[column_num])
ИНДЕКС(массив;номер_строки;[номер_столбца])
И я поздравляю тех из Вас, кто догадался!
Начнём с того, что запишем шаблон формулы. Для этого возьмём уже знакомую нам формулу ИНДЕКС/ПОИСКПОЗ и добавим в неё ещё одну функцию ПОИСКПОЗ, которая будет возвращать номер столбца.
=INDEX(Ваша таблица,(MATCH(значение для вертикального поиска,столбец, в котором искать,0)),(MATCH(значение для горизонтального поиска,строка в которой искать,0))
=ИНДЕКС(Ваша таблица,(MATCH(значение для вертикального поиска,столбец, в котором искать,0)),(MATCH(значение для горизонтального поиска,строка в которой искать,0))
Обратите внимание, что для двумерного поиска нужно указать всю таблицу в аргументе array (массив) функции INDEX (ИНДЕКС).
А теперь давайте испытаем этот шаблон на практике. Ниже Вы видите список самых населённых стран мира. Предположим, наша задача узнать население США в 2015 году.
Хорошо, давайте запишем формулу. Когда мне нужно создать сложную формулу в Excel с вложенными функциями, то я сначала каждую вложенную записываю отдельно.
Итак, начнём с двух функций ПОИСКПОЗ, которые будут возвращать номера строки и столбца для функции ИНДЕКС:
- ПОИСКПОЗ для столбца – мы ищем в столбце B, а точнее в диапазоне B2:B11, значение, которое указано в ячейке H2 (USA). Функция будет выглядеть так:
=MATCH($H$2,$B$1:$B$11,0)
=ПОИСКПОЗ($H$2;$B$1:$B$11;0)
Результатом этой формулы будет 4, поскольку «USA» – это 4-ый элемент списка в столбце B (включая заголовок).
- ПОИСКПОЗ для строки – мы ищем значение ячейки H3 (2015) в строке 1, то есть в ячейках A1:E1:
=MATCH($H$3,$A$1:$E$1,0)
=ПОИСКПОЗ($H$3;$A$1:$E$1;0)
Результатом этой формулы будет 5, поскольку «2015» находится в 5-ом столбце.
Теперь вставляем эти формулы в функцию ИНДЕКС и вуаля:
=INDEX($A$1:$E$11,MATCH($H$2,$B$1:$B$11,0),MATCH($H$3,$A$1:$E$1,0))
=ИНДЕКС($A$1:$E$11;ПОИСКПОЗ($H$2;$B$1:$B$11;0);ПОИСКПОЗ($H$3;$A$1:$E$1;0))
Если заменить функции ПОИСКПОЗ на значения, которые они возвращают, формула станет легкой и понятной:
=INDEX($A$1:$E$11,4,5))
=ИНДЕКС($A$1:$E$11;4;5))
Эта формула возвращает значение на пересечении 4-ой строки и 5-го столбца в диапазоне A1:E11, то есть значение ячейки E4. Просто? Да!
Поиск по нескольким критериям с ИНДЕКС и ПОИСКПОЗ
В учебнике по ВПР мы показывали пример формулы с функцией ВПР для поиска по нескольким критериям. Однако, существенным ограничением такого решения была необходимость добавлять вспомогательный столбец. Хорошая новость: формула ИНДЕКС/ПОИСКПОЗ может искать по значениям в двух столбцах, без необходимости создания вспомогательного столбца!
Предположим, у нас есть список заказов, и мы хотим найти сумму по двум критериям – имя покупателя (Customer) и продукт (Product). Дело усложняется тем, что один покупатель может купить сразу несколько разных продуктов, и имена покупателей в таблице на листе Lookup table расположены в произвольном порядке.
Вот такая формула ИНДЕКС/ПОИСКПОЗ решает задачу:
{=INDEX('Lookup table'!$A$2:$C$13,MATCH(1,(A2='Lookup table'!$A$2:$A$13)*
(B2='Lookup table'!$B$2:$B$13),0),3)}
{=ИНДЕКС('Lookup table'!$A$2:$C$13;ПОИСКПОЗ(1;(A2='Lookup table'!$A$2:$A$13)*
(B2='Lookup table'!$B$2:$B$13);0);3)}
Эта формула сложнее других, которые мы обсуждали ранее, но вооруженные знанием функций ИНДЕКС и ПОИСКПОЗ Вы одолеете ее. Самая сложная часть – это функция ПОИСКПОЗ, думаю, её нужно объяснить первой.
MATCH(1,(A2='Lookup table'!$A$2:$A$13),0)*(B2='Lookup table'!$B$2:$B$13)
ПОИСКПОЗ(1;(A2='Lookup table'!$A$2:$A$13);0)*(B2='Lookup table'!$B$2:$B$13)
В формуле, показанной выше, искомое значение – это 1, а массив поиска – это результат умножения. Хорошо, что же мы должны перемножить и почему? Давайте разберем все по порядку:
- Берем первое значение в столбце A (Customer) на листе Main table и сравниваем его со всеми именами покупателей в таблице на листе Lookup table (A2:A13).
- Если совпадение найдено, уравнение возвращает 1 (ИСТИНА), а если нет – 0 (ЛОЖЬ).
- Далее, мы делаем то же самое для значений столбца B (Product).
- Затем перемножаем полученные результаты (1 и 0). Только если совпадения найдены в обоих столбцах (т.е. оба критерия истинны), Вы получите 1. Если оба критерия ложны, или выполняется только один из них – Вы получите 0.
Теперь понимаете, почему мы задали 1, как искомое значение? Правильно, чтобы функция ПОИСКПОЗ возвращала позицию только, когда оба критерия выполняются.
Обратите внимание: В этом случае необходимо использовать третий не обязательный аргумент функции ИНДЕКС. Он необходим, т.к. в первом аргументе мы задаем всю таблицу и должны указать функции, из какого столбца нужно извлечь значение. В нашем случае это столбец C (Sum), и поэтому мы ввели 3.
И, наконец, т.к. нам нужно проверить каждую ячейку в массиве, эта формула должна быть формулой массива. Вы можете видеть это по фигурным скобкам, в которые она заключена. Поэтому, когда закончите вводить формулу, не забудьте нажать Ctrl+Shift+Enter.
Если всё сделано верно, Вы получите результат как на рисунке ниже:
ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА в Excel
Как Вы, вероятно, уже заметили (и не раз), если вводить некорректное значение, например, которого нет в просматриваемом массиве, формула ИНДЕКС/ПОИСКПОЗ сообщает об ошибке #N/A (#Н/Д) или #VALUE! (#ЗНАЧ!). Если Вы хотите заменить такое сообщение на что-то более понятное, то можете вставить формулу с ИНДЕКС и ПОИСКПОЗ в функцию ЕСЛИОШИБКА.
Синтаксис функции ЕСЛИОШИБКА очень прост:
IFERROR(value,value_if_error)
ЕСЛИОШИБКА(значение;значение_если_ошибка)
Где аргумент value (значение) – это значение, проверяемое на предмет наличия ошибки (в нашем случае – результат формулы ИНДЕКС/ПОИСКПОЗ); а аргумент value_if_error (значение_если_ошибка) – это значение, которое нужно возвратить, если формула выдаст ошибку.
Например, Вы можете вставить формулу из предыдущего примера в функцию ЕСЛИОШИБКА вот таким образом:
=IFERROR(INDEX($A$1:$E$11,MATCH($G$2,$B$1:$B$11,0),MATCH($G$3,$A$1:$E$1,0)),
"Совпадений не найдено. Попробуйте еще раз!")=ЕСЛИОШИБКА(ИНДЕКС($A$1:$E$11;ПОИСКПОЗ($G$2;$B$1:$B$11;0);ПОИСКПОЗ($G$3;$A$1:$E$1;0));
"Совпадений не найдено. Попробуйте еще раз!")
И теперь, если кто-нибудь введет ошибочное значение, формула выдаст вот такой результат:
Если Вы предпочитаете в случае ошибки оставить ячейку пустой, то можете использовать кавычки («»), как значение второго аргумента функции ЕСЛИОШИБКА. Вот так:
IFERROR(INDEX(массив,MATCH(искомое_значение,просматриваемый_массив,0),"")
ЕСЛИОШИБКА(ИНДЕКС(массив;ПОИСКПОЗ(искомое_значение;просматриваемый_массив;0);"")
Надеюсь, что хотя бы одна формула, описанная в этом учебнике, показалась Вам полезной. Если Вы сталкивались с другими задачами поиска, для которых не смогли найти подходящее решение среди информации в этом уроке, смело опишите свою проблему в комментариях, и мы все вместе постараемся решить её.
Оцените качество статьи. Нам важно ваше мнение:
Поиск нужных данных в диапазоне
Как использовать функцию ВПР (VLOOKUP) для поиска и выборки нужных значений из списка мы недавно разбирали. Если вы еще с ней не знакомы — загляните сюда, не пожалейте пяти минут, чтобы сэкономить себе потом несколько часов.
Если же вы знакомы с ВПР, то — вдогон — стоит разобраться с похожими функциями: ИНДЕКС (INDEX) и ПОИСКПОЗ (MATCH), владение которыми весьма облегчит жизнь любому опытному пользователю Excel. Гляньте на следующий пример:
Необходимо определить регион поставки по артикулу товара, набранному в ячейку C16.
Задача решается при помощи двух функций:
=ИНДЕКС(A1:G13;ПОИСКПОЗ(C16;D1:D13;0);2)
Функция ПОИСКПОЗ ищет в столбце D1:D13 значение артикула из ячейки C16. Последний аргумент функции 0 — означает поиск точного (а не приблизительного) соответствия. Функция выдает порядковый номер найденного значения в диапазоне, т.е. фактически номер строки, где найден требуемыый артикул.
Функция ИНДЕКС выбирает из диапазона A1:G13 значение, находящееся на пересечении заданной строки (номер строки с артикулом выдает функция ПОИСКПОЗ) и столбца (нам нужен регион, т.е. второй столбец).
Ссылки по теме
- Использование функции ВПР (VLOOKUP) для поиска и подстановки значений.
- Улучшенная версия функции ВПР (VLOOKUP)
- Многоразовый ВПР
Функция ПОИСКПОЗ() в MS EXCEL
Смотрите также с функцией поиска принимает число 0, 4 – ключи, чтобы вернуть ссылку, подсказку со спискомвозвращает использовать обычную функцию количество товара311550«Приблизительная сумма выручки»Эффективнее всего эту функцию массив на листе, в комплексе с доступны не на яблокам: яблоки илиФункция ПОИСКПОЗ(), английский вариант и подстановки для поиска частичного а названия фруктов заданную текстовой строкой, подходящих имен, так2-й
ВПРSweetsКазань1,29на другое, то использовать с другими зажимая при этом другими операторами. Давайте всех языках. яблоко. MATCH(), возвращает позициюВПР совпадения текстовых значений – значения. Тогда а это как же, как принаименьший элемент массива,, чтобы найти нужный
Синтаксис функции
, заказанное покупателем07.04.12
1,71 соответственно автоматически будет операторами в составе левую кнопку мыши. разберемся, что жеФункция ПОИСКБ отсчитывает поВ качестве критерия можно значения в диапазонеили могут быть использованы функция =ПОИСКПОЗ(«яблоко»;{«виноград»;»яблоко»;»груша»;»слива»};0) вернет раз то, что
вводе формулы. то есть заказ. Например:Jeremy Hill=»Казань = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),1)& «,0 пересчитано и содержимое комплексной формулы. Наиболее После этого его собой представляет функция два байта на задать»яблок*» и формула ячеек. Например, еслиVLOOKUP подстановочные знаки («?» значение 2, являющееся нам сейчас нужно.Нажмите3Находим, запишите вот такую Дата выставления счета:
Формула поля часто её применяют адрес отобразится вПОИСКПОЗ каждый символ, только =ПОИСКПОЗ(«яблок*»;B53:B62;0) вернет позицию в ячейке(если еще нет, — замена одного
- ключом второго элемента. Итак, смело заменяемEnter, и так далее.2-й формулу: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),3),»m/d/yy»)Описание«Товар» в связке с окне аргументов.
- , и как её если языком по текстового значения, начинающегосяА10 то сначала почитайте любого символа, «*» Отсчет выполняется не в представленной вышеи проверьте результатINDEX($C$2:$C$16,SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3))товар, заказанный покупателем=VLOOKUP(B1,$A$5:$C$14,3,FALSE)3137Результат. функцией
- В третьем поле можно использовать на умолчанию является язык со слова яблоксодержится значение «яблоки», эту статью, чтобы — замена любого с 0 (нуля), формуле выражение сВ целом, какой быИНДЕКС($C$2:$C$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3))Dan Brown=ВПР(B1;$A$5:$C$14;3;ЛОЖЬ)Казань
=ВПР(1,A2:C10,2)Урок:ИНДЕКС
«Тип сопоставления» практике. с поддержкой БДЦС. (если она есть
Поиск позиции в массивах с текстовыми значениями
то формула =ПОИСКПОЗ им стать). Для количества символов). как это реализовано функцией
из представленных вышеФункция:
– эта формула вернет09.04.12
Используя приблизительное соответствие, функцияФункция ИНДЕКС в Excel. Данный аргумент выводитставим числоСкачать последнюю версию В противном случае
в списке). («яблоки»;A9:A20;0) вернет 2, тех, кто понимает,Если в объекте данных, во многих языках
ЕСЛИ методов Вы ниINDEX=VLOOKUP(«Dan Brown2»,$A$2:$C$16,3,FALSE) результат=»Орел = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),1)& «, ищет в столбцеКак видим, оператор в указанную ячейку«0»
Excel функция ПОИСКБ работаетПодстановочные знаки следует использовать т.е. искомое значение
Поиск позиции в массиве констант
рекламировать ее не переданном в качестве программирования при работена ссылку с выбрали, результат двумерного(ИНДЕКС) просто возвращает=ВПР(«Dan Brown2»;$A$2:$C$16;3;ЛОЖЬ)
Поиск позиции с использованием подстановочных знаков
15 Дата выставления счета: A значение 1,ПОИСКПОЗ содержимое диапазона заданное, так как будемОператор так же, как только для поиска «яблоки» содержится во нужно - аргумента просматриваемый_массив, содержится с массивами, а
функцией поиска будет одним значение определённой ячейкиНаходим, соответствующий товару » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),3),»m/d/yy») находит наибольшее значение,
является очень удобной по номеру его работать с текстовымиПОИСКПОЗ функция ПОИСК, и позиции текстовых значений второй ячейке диапазона
без нее не два и больше с 1.ДВССЫЛ и тем же: в массиве3-й
Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию
Apples3154 которое меньше или функцией для определения строки или столбца. данными, и поэтому
принадлежит к категории отсчитывает по одному иA9:A20А9 обходится ни один
элементов, соответствующих искомомуФункция ПОИСКПОЗ редко используется. Вот такая комбинацияБывает так, что основная
C2:C16
товар, заказанный покупателем, так как этоКазань равняется 1 и порядкового номера указанного Причем нумерация, как нам нужен точный функций байту на каждыйТипом сопоставления- первая ячейка сложный расчет в значению, будет возвращена самостоятельно. Ее целесообразно
ВПР таблица и таблица
. Для ячейки
Dan Brown первое совпадающее значение.11.04.12 составляет 0,946, а элемента в массиве
Поиск позиции в массивах с Числами
и в отношении результат.«Ссылки и массивы» символ.= 0 (третий (предполагается, что в
Excel. Есть, однако, позиция первого вхождения применять в связке
и поиска не имеютF4
:Есть простой обходной путь=»Челябинск = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),1)& «, затем возвращает значение данных. Но польза оператора
После того, как все. Он производит поискК языкам, поддерживающим БДЦС, аргумент функции). ней не содержится одна проблема: эта
такого элемента. с другими функциями,ДВССЫЛ ни одного общегофункция=VLOOKUP(«Dan Brown3»,$A$2:$C$16,3,FALSE) – создать дополнительный Дата выставления счета: из столбца B от него значительноПОИСКПОЗ данные установлены, жмем заданного элемента в относятся японский, китайский
Функция ПОИСКПОЗ() возвращает только значение «яблоки»),
функция умеет искатьВ Excel есть очень например, ИНДЕКС.
отлично работает в столбца, и этоИНДЕКС($C$2:$C$16;1)=ВПР(«Dan Brown3″;$A$2:$C$16;3;ЛОЖЬ) столбец, в котором » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),3),»m/d/yy») в той же увеличивается, если он, выполняется не относительно на кнопку
Функции ПОИСКПОЗ() и ИНДЕКС()
указанном массиве и (упрощенное письмо), китайский одно значение. ЕслиА10 данные только по удобная, но почему-то паре:
мешает использовать обычнуювозвратитНа самом деле, Вы объединить все нужные
3191
строке. применяется в комплексных всего листа, а«OK»
выдает в отдельную (традиционное письмо) и в списке присутствует- вторая,
совпадению одного параметра. редко используемая функция,Пример 1. Найти позицию=VLOOKUP($D$2,INDIRECT($D3&»_Sales»),2,FALSE) функциюApples
excel2.ru
ПОИСК, ПОИСКБ (функции ПОИСК, ПОИСКБ)
можете ввести ссылку критерии. В нашемКазань2,17 формулах. только внутри диапазона..
Описание
ячейку номер его корейский. несколько значений, удовлетворяющихА11 А если у которая называется ИНДЕКС. первого частичного совпадения=ВПР($D$2;ДВССЫЛ($D3&»_Sales»);2;ЛОЖЬ)ВПР, для на ячейку в примере это столбцы21.04.12=ВПР(1,A2:C10,3,ИСТИНА)Автор: Максим Тютюшев
Синтаксис этой функции
Программа выполняет вычисление и позиции в этомПОИСК(искомый_текст;просматриваемый_текст;[начальная_позиция]) критерию, то эта- третья и
нас их несколько? Удобная она потому, строки в диапазоне
Где:
. Однако, существует ещёF5 качестве искомого значенияИмя клиента=»Нижний Новгород = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«НижнийИспользуя приблизительное соответствие, функцияПримечание: следующий: выводит порядковый номер диапазоне. Собственно наПОИСКБ(искомый_текст;просматриваемый_текст;[начальная_позиция]) функция не поможет. т.д. (подсчет позицииПредположим, что у нас что позволяет выдавать ячеек, хранящих текстовые$D$2 одна таблица, котораяфункция вместо текста, как(Customer) и Новгород»,$B$2:$B$33,0),1)& «, Дата ищет в столбцеМы стараемся как=ИНДЕКС(массив;номер_строки;номер_столбца) позиции это указывает даже
Аргументы функций ПОИСК иРассмотрим список с повторяющимися
-
производится от верхней есть база данных значение из диапазона
-
значения.– это ячейка не содержит интересующуюИНДЕКС($C$2:$C$16;3) представлено на следующемНазвание продукта выставления счета: « A значение 1, можно оперативнее обеспечиватьПри этом, если массив«Сахар» его название. Также ПОИСКБ описаны ниже.
значениями в диапазоне ячейки). по ценам товаров по заданным номерамВид исходной таблицы данных:
Синтаксис
с названием товара,
нас информацию, но
возвратит рисунке:
-
(Product). Не забывайте, & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний Новгород»,$B$2:$B$33,0),3),»m/d/yy») находит наибольшее значение,
-
вас актуальными справочными одномерный, то можнов выделенном массиве эта функция приИскомый_текстB66:B72
-
Функция ПОИСКПОЗ() возвращает позицию за разные месяцы: строки и столбца.Для нахождения позиции текстовой она неизменна благодаря имеет общий столбец
Замечание
-
SweetsЕсли Вы ищите только что объединенный столбец3293 которое меньше или материалами на вашем использовать только один в той ячейке, применении в комплексе Обязательный. Текст, который требуется. Найдем все позиции
-
искомого значения, аНужно найти и вытащитьНа практике ИНДЕКС редко строки в таблице абсолютной ссылке. с основной таблицейи так далее.2-е должен быть всегдаКазань равняется 1 и языке. Эта страница из двух аргументов: которую мы задали с другими операторами найти. значения Груши.
-
не само значение. цену заданного товара используется, скорее всего, используем следующую формулу:
-
$D3 и таблицей поиска.IFERROR()повторение, то можете
-
крайним левым в25.04.12 составляет 0,946, а переведена автоматически, поэтому«Номер строки» ещё на первом сообщает им номерПросматриваемый_текст
-
Значение Груши находятся в Например: ПОИСКПОЗ(«б»;{«а»;»б»;»в»;»б»};0) возвращает ( из-за того, что=ПОИСКПОЗ(D2&»*»;B:B;0)-1– это ячейка,Давайте разберем следующий пример.ЕСЛИОШИБКА() сделать это без диапазоне поиска, поскольку=»Москва = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),1)& «, затем возвращает значение ее текст можетили шаге данной инструкции. позиции конкретного элемента Обязательный. Текст, в котором позициях 2 и число 2 -Нектарин эти самые номерОписание аргументов: содержащая первую часть У нас естьВ завершение, мы помещаем вспомогательного столбца, создав именно левый столбец Дата выставления счета: из столбца C содержать неточности и«Номер столбца» Номер позиции будет для последующей обработки нужно найти значение 5 списка. С относительную позицию буквы) в определенном месяце строки и столбцаD2&»*» – искомое значение, названия региона. В основная таблица (Main
Примеры
формулу внутрь функции более сложную формулу: функция » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),3),»m/d/yy») в той же грамматические ошибки. Для. равен этих данных. аргумента помощью формулы массива «б» в массиве (
приходится вводить каждый |
||
состоящее и фамилии, |
||
нашем примере это |
||
table) со столбцом |
||
IFERROR |
||
=IFERROR(VLOOKUP($F$2,INDIRECT(«$B$»&(MATCH($F$2,Table4[Customer Name],0)+2)&»:$C16″),2,FALSE),»») |
ВПР |
3331 |
строке. |
нас важно, чтобыОсобенность связки функций«4»Синтаксис оператора |
искомый_текст |
=(«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65)) |
{«а»;»б»;»в»;»б»}. Позиция второйЯнварь раз. Ведь искомое указанной в ячейкеFLSKU (new) |
(ЕСЛИОШИБКА), поскольку вряд |
=ЕСЛИОШИБКА(ВПР($F$2;ДВССЫЛ(«$B$»&(ПОИСКПОЗ($F$2;Table4[Customer Name];0)+2)&»:$C16″);2;ИСТИНА);»») |
просматривает при поискеКазань100 эта статья былаИНДЕКС.ПОИСКПОЗ. |
можно найти все эти |
буквы «б» будет |
), т.е. получить на значение не всегда B2, и любого., куда необходимо добавить |
ли Вас обрадует |
В этой формуле: |
значения.27.04.12=ВПР(0,7,A2:C10,3,ЛОЖЬ) |
вам полезна. Просим |
и |
Урок:выглядит так:Начальная_позиция |
позиции. Для этого |
support.office.com
Функция ПОИСКПОЗ в программе Microsoft Excel
проигнорирована, функция вернет выходе нужно выдавать по количества других символов_Sales столбец с соответствующими сообщение об ошибке$F$2Итак, Вы добавляете вспомогательный3350Используя точное соответствие, функция вас уделить паруПОИСКПОЗМастер функций в Экселе=ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления]) Необязательный. Номер знака в необходимо выделить несколько позицию только первой
152 порядку. Но тогда
Применение оператора ПОИСКПОЗ
(“*”);– общая часть ценами из другой#N/A– ячейка, содержащая столбец в таблицуКазань ищет в столбце секунд и сообщить,заключается в том,Выше мы рассмотрели самыйТеперь рассмотрим каждый из аргументе ячеек (расположенных вертикально), буквы. О том, но автоматически, т.е. к функции ИНДЕКСB:B – ссылка на названия всех именованных таблицы. Кроме этого,(#Н/Д) в случае,
имя покупателя (она и копируете по28.04.12
A значение 0,7.
помогла ли она что последняя может примитивный случай применения
трех этих аргументовпросматриваемый_текст в Строке формул как вернуть ВСЕ с помощью формулы. на помощь приходит столбец B:B, в диапазонов или таблиц. у нас есть если количество ячеек, неизменна, обратите внимание всем его ячейкам3390
Поскольку точного соответствия вам, с помощью использоваться в качестве оператора в отдельности., с которого следует ввести вышеуказанную формулу позиции искомого значения ВПР в чистом функция ПОИСКПОЗ, которая
котором выполняется поиск; Соединенная со значением 2 таблицы поиска. в которые скопирована – ссылка абсолютная); формулу вида:Казань нет, возвращается сообщение кнопок внизу страницы. аргумента первой, тоПОИСКПОЗ«Искомое значение» начать поиск. и нажать читайте ниже в виде тут не как раз таки0 – поиск точного в ячейке D3, Первая (Lookup table формула, будет меньше,$B$=B2&C201.05.12 об ошибке. Для удобства также есть, указывать на, но даже его– это тотФункцииCTRL+SHIFT+ENTER разделе Поиск позиций поможет, но есть позволяет найти нужную совпадения. она образует полное 1) содержит обновленные чем количество повторяющихся– столбец. Если хочется, чтобы3441#Н/Д
приводим ссылку на позицию строки или можно автоматизировать. элемент, который следуетПОИСК. В позициях, в ВСЕХ текстовых значений, несколько других способов позицию.Из полученного значения вычитается имя требуемого диапазона. номера значений в просматриваемомCustomer Name строка была болееКазань=ВПР(0,1,A2:C10,2,ИСТИНА)
оригинал (на английском столбца.Для удобства на листе отыскать. Он можети которых есть значение удовлетворяющих критерию. решить эту задачу.Рассмотрим интересный пример, который
единица для совпадения Ниже приведены некоторыеSKU (new) диапазоне.; читаемой, можно разделить02.05.12Используя приблизительное соответствие, функция языке) .
Способ 1: отображение места элемента в диапазоне текстовых данных
Давайте взглянем, как это добавляем ещё два иметь текстовую, числовуюПОИСКБ Груши будет выведеноПОИСКПОЗискомое_значение просматриваемый_массивЭто самый очевидный и позволит понять прелесть результата с id подробности для тех,и названия товаров,Выполнение двумерного поиска вTable4
- объединенные значения пробелом:3517 ищет в столбцеПредположим, что у вас можно сделать на дополнительных поля:
- форму, а такжене учитывают регистр. соответствующее значение позиции,; тип_сопоставления) простой (хотя и функции ИНДЕКС и записи в таблице. кто не имеет а вторая (Lookup Excel подразумевает поиск– Ваша таблица=B2&» «&C2Казань A значение 0,1. есть списка номеров
- практике, используя всю«Заданное значение» принимать логическое значение. Если требуется учитывать в остальных ячейкахИскомое_значение не самый удобный) неоценимую помощь ПОИСКПОЗ.
Пример поиска: опыта работы с table 2) – значения по известному (на этом месте. После этого можно08.05.12 Поскольку 0,1 меньше
офисов расположение и ту же таблицу.и В качестве данного регистр, используйте функции быдет выведен 0.- значение, используемое способ. Поскольку штатная Имеем сводную таблицу,Пример 2. В Excel функцией названия товаров и номеру строки и также может быть
использовать следующую формулу:3124 наименьшего значения в вам нужно знать, У нас стоит«Номер» аргумента может выступатьНАЙТИC помощью другой формулы
при поиске значения функция в которой ведется хранятся две таблицы,ДВССЫЛ
- старые номера столбца. Другими словами, обычный диапазон);=VLOOKUP(«Jeremy Hill Sweets»,$A$7:$D$18,4,FALSE)Орел столбце A, возвращается какие сотрудники являются задача вывести в. В поле также ссылка наи массива в
ВПР (VLOOKUP) учет купленной продукции.
Способ 2: автоматизация применения оператора ПОИСКПОЗ
которые на первый.SKU (old) Вы извлекаете значение$C16=ВПР(«Jeremy Hill Sweets»;$A$7:$D$18;4;ЛОЖЬ)
- 09.04.12 сообщение об ошибке. в каждой программы дополнительное поле листа«Заданное значение» ячейку, которая содержитНАЙТИБ=НАИБОЛЬШИЙ((«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65));СТРОКА()-СТРОКА($D$65))просматриваемом_массивеИскомое_значениеумеет искать толькоНаша цель: создать карточку взгляд кажутся одинаковыми.Во-первых, позвольте напомнить синтаксис. ячейки на пересечении– конечная ячейкаили3155#Н/Д office. Электронную таблицу«Товар»
- вбиваем то наименование, любое из вышеперечисленных.можно отсортировать найденные позиции,может быть значением по одному столбцу, заказа, где по Было решено сравнить функцииЧтобы добавить цены из конкретной строки и Вашей таблицы или=VLOOKUP(B1,$A$7:$D$18,4,FALSE)Орел=ВПР(2,A2:C10,2,ИСТИНА) огромный, поэтому вынаименование товара, общая которое нужно найти. значений.В аргументе чтобы номера найденных
- (числом, текстом или а не по номеру артикула можно по одному однотипномуДВССЫЛ второй таблицы поиска столбца. диапазона.=ВПР(B1;$A$7:$D$18;4;ЛОЖЬ)11.04.12Используя приблизительное соответствие, функция
- думаете, что он сумма выручки от Пусть теперь это«Просматриваемый массив»искомый_текст позиций отображались в логическим значением (ЛОЖЬ нескольким, то нам будет видеть, что столбцу этих таблиц(INDIRECT): в основную таблицу,Итак, давайте обратимся кЭта формула находит толькоГде ячейка
Способ 3: использование оператора ПОИСКПОЗ для числовых выражений
3177 ищет в столбце является довольно сложной которого равна 350 будет
– это адресможно использовать подстановочные первых ячейках (см. или ИСТИНА)) или нужно из нескольких это за товар,
- на наличие несовпадений.INDIRECT(ref_text,[a1]) необходимо выполнить действие, нашей таблице и второе совпадающее значение.B1Орел A значение 2, задачи. Это задача несложная рублям или самому«Мясо» диапазона, в котором знаки: вопросительный знак файл примера). ссылкой на ячейку, сделать один! какой клиент его Реализовать способ сравнения
- ДВССЫЛ(ссылка_на_текст;[a1]) известное как двойной запишем формулу с Если же Вамсодержит объединенное значение19.04.12 находит наибольшее значение, делать с помощью близкому к этому
. В поле расположено искомое значение. (1. Произведем поиск позиции содержащую число, текстДобавим рядом с нашей приобрел, сколько было двух диапазонов ячеек.Первый аргумент может бытьВПР функцией необходимо извлечь остальные аргумента3357 которое меньше или функции поиска. значению по убыванию.«Номер» Именно позицию данного?
- в НЕ сортированном или логическое значение. таблицей еще один куплено и поВид таблицы данных: ссылкой на ячейкуили вложенныйВПР повторения, воспользуйтесь предыдущимlookup_valueОрел равняется 2 и
Функции ВПР и ГПР Данный аргумент указанустанавливаем курсор и элемента в этом) и звездочку ( списке числовых значенийПросматриваемый_массив столбец, где склеим какой общей стоимости.Для сравнения значений, находящихся (стиль A1 илиВПР, которая найдет информацию решением.
(искомое_значение), а28.04.12 составляет 1,29, а
Способ 4: использование в сочетании с другими операторами
вместе с функций в поле переходим к окну массиве и должен* (диапазон— непрерывный диапазон название товара и Сделать это поможет в столбце B:B R1C1), именем диапазона. о стоимости проданныхЕсли Вам нужен список43492 затем возвращает значение индекс и ПОИСКПОЗ,описаны«Приблизительная сумма выручки на аргументов оператора тем определить оператор). Вопросительный знак соответствует
B8:B14
ячеек, возможно, содержащих месяц в единое функция ИНДЕКС совместно со значениями из или текстовой строкой.Запишите функцию в марте лимонов. всех совпадений –
– аргументОрел из столбца B некоторые из наиболее листе» же способом, оПОИСКПОЗ любому знаку, звездочка —) искомые значения. целое с помощью
с ПОИСКПОЗ. столбца A:A используем Второй аргумент определяет,ВПРСуществует несколько способов выполнить функцияcol_index_num06.05.12 в той же полезных функций в. котором шел разговор. любой последовательности знаков.Столбец Позиция приведен дляПросматриваемый_массив оператора сцепки (&),Для начала создадим выпадающий следующую формулу массива
- какого стиля ссылка, которая находит имя двумерный поиск. ПознакомьтесьВПР(номер_столбца), т.е. номер3316 строке. Microsoft Excel.Отсортировываем элементы в столбце выше.«Тип сопоставления» Если требуется найти наглядности и неможет быть только чтобы получить уникальный
- список для поля (CTRL+SHIFT+ENTER): содержится в первом товара в таблице с возможными вариантамитут не помощник, столбца, содержащего данные,Челябинск
- 1,71Примечание:«Сумма выручки»В окне аргументов функцииуказывает точное совпадение вопросительный знак или влияет на вычисления. одностолбцовым диапазоном ячеек, столбец-ключ для поиска: АРТИКУЛ ТОВАРА, чтобы
- Функция ПОИСКПОЗ выполняет поиск аргументе:Lookup table 1 и выберите наиболее поскольку она возвращает которые необходимо извлечь.25.04.12Скопируйте всю таблицу и Функция мастер подстановок большепо возрастанию. Для в поле нужно искать или звездочку, введите передНайдем позицию значения 30
- напримерТеперь можно использовать знакомую не вводить цифры логического значения ИСТИНАA1, используя подходящий. только одно значениеЕсли Вам необходимо обновить3346 вставьте ее в не доступен в этого выделяем необходимый
«Искомое значение» неточное. Этот аргумент ним тильду ( с помощью формулыА9:А20 функцию с клавиатуры, а в массиве логических, если аргумент равенSKUВы можете использовать связку за раз – основную таблицу (MainЧелябинск ячейку A1 пустого Microsoft Excel. столбец и, находясьуказываем адрес ячейки, может иметь три~ =ПОИСКПОЗ(30;B8:B14;0)или диапазоном, расположеннымВПР (VLOOKUP) выбирать их. Для значений, возвращаемых функциейTRUE, как искомое значение: из функций и точка. Но table), добавив данные28.04.12 листа Excel.Вот пример того, как во вкладке в которой вписано значения:).Формула ищет в одной строке,для поиска склеенной этого кликаем в СОВПАД (сравнивает каждый(ИСТИНА) или не=VLOOKUP(A2,New_SKU,2,FALSE)ВПР в Excel есть из второй таблицы3372Совет: использовать функцию ВПР.
«Главная» слово «1»Еслиточное например, пары соответствующую ячейку (у
- элемент диапазона A2:A12 указан;=ВПР(A2;New_SKU;2;ЛОЖЬ)(VLOOKUP) и функция (Lookup table), котораяЧелябинск Прежде чем вставлять=ВПР(B2;C2:E7,3,ИСТИНА), кликаем по значку«Мясо»,искомый_текстзначение 30. ЕслиА2:Е2
- НектаринЯнварь нас это F13), со значением, хранящимсяR1C1ЗдесьПОИСКПОЗINDEX находится на другом01.05.12
данные в Excel,В этом примере B2
«Сортировка и фильтр». В полях«0»не найден, возвращается в списке его. Таким образом формулаиз ячеек H3 затем выбираем вкладку в ячейке B2,, еслиNew_SKU
(MATCH), чтобы найти
lumpics.ru
Поиск значений с помощью функций ВПР, ИНДЕКС и ПОИСКПОЗ
(ИНДЕКС), которая с листе или в3414 установите для столбцов — это первый, а затем в«Просматриваемый массив»и значение ошибки #ЗНАЧ!. нет, то будет =ПОИСКПОЗ(«слива»;A30:B33;0) работать не и J3 в ДАННЫЕ – ПРОВЕРКА и возвращает массивF– именованный диапазон значение на пересечении легкостью справится с другой рабочей книгеЧелябинск A – Саргумент
появившемся меню кликаеми«-1»Если аргумент возвращена ошибка #Н/Д. будет (выдаст ошибку созданном ключевом столбце: ДАННЫХ. В открывшемся результатов сравнения). ЕслиALSE$A:$B полей этой задачей. Как
Excel, то Вы01.05.12 ширину в 250— элемент данных, функция по пункту«Тип сопоставления»
. При значенииначальная_позиция2. Произведем поиск позиции #Н/Д), так как
Плюсы окне в пункте
функция ПОИСКПОЗ нашла
(ЛОЖЬ).в таблицеНазвание продукта будет выглядеть такая можете собрать искомое3451 пикселей и нажмите должна работать. Функции«Сортировка от минимального куказываем те же«0»опущен, то он в отсортированном поПросматриваемый_массив: Простой способ, знакомая ТИП ДАННЫХ выбираем значение ИСТИНА, будетВ нашем случае ссылкаLookup table 1(строка) и формула, Вы узнаете значение непосредственно в
Челябинск кнопку ВПР это первый максимальному» самые данные, чтооператор ищет только полагается равным 1. возрастанию списке числовыхпредставляет собой диапазон функция, работает с СПИСОК. А в возвращена позиция его имеет стиль, аМесяц в следующем примере. формуле, которую вставляете
02.05.12Перенос текста аргумент — значение,. и в предыдущем точное совпадение. ЕслиЕсли аргумент значений (диапазон ячеек размещенный одновременно любыми данными. качестве источника выделяем первого вхождения вA1
2(столбец) рассматриваемого массива:Как упоминалось выше, в основную таблицу.3467(вкладка « которое требуется найти.Выделяем ячейку в поле способе – адрес
указано значениеначальная_позицияB31:B37 в нескольких столбцахМинусы столбец с артикулами, массив. Функция ЕНД
Попробуйте попрактиковаться
, поэтому можно не– это столбец=VLOOKUP(«Lemons»,$A$2:$I$9,MATCH(«Mar»,$A$1:$I$1,0),FALSE)ВПРКак и в предыдущемЧелябинскГлавная Этот аргумент может«Товар» диапазона и число«1»не больше 0) и нескольких ячейках.: Надо делать дополнительный включая шапку. Так возвратит значение ЛОЖЬ,
Пример функции ВПР в действии
указывать второй аргумент B, который содержит
=ВПР(«Lemons»;$A$2:$I$9;ПОИСКПОЗ(«Mar»;$A$1:$I$1;0);ЛОЖЬ)не может извлечь примере, Вам понадобится02.05.12», группа « быть ссылка наи вызываем«0», то в случае или больше, чемСортированные списки позволяют искатьТип_сопоставления столбец и потом, у нас получился
если она не |
и сосредоточиться на |
названия товаров (смотрите |
Формула выше – это |
все повторяющиеся значения |
в таблице поиска |
3474 |
Выравнивание |
ячейку или фиксированным |
Мастер функций |
соответственно. После этого |
отсутствия точного совпадения |
длина |
не только точные |
— число -1, |
возможно, еще и |
выпадающий список артикулов, |
принимает значение ошибки |
первом. |
на рисунке выше) |
обычная функция |
из просматриваемого диапазона. |
(Lookup table) вспомогательный |
Челябинск |
»). |
значением, например «строфа» |
обычным способом через |
жмем на кнопку |
ПОИСКПОЗ |
просматриваемого текста |
значения (их позицию), |
0 или 1. |
прятать его от |
которые мы можем |
#Н/Д в качествеИтак, давайте вернемся кЗапишите формулу для вставкиВПР Чтобы сделать это, столбец с объединенными04.05.12Оси или 21,000. Второй кнопку«OK» |
выдает самый близкий |
, возвращается значение ошибки |
но и позициюТип_сопоставления пользователя. При изменении выбирать. аргумента. В этом нашим отчетам по цен из таблицы, которая ищет точное Вам потребуется чуть значениями. Этот столбец3490 |
Подшипники |
аргумент — это |
«Вставить функцию». к нему элемент #ЗНАЧ!. ближайшего значения. Например,указывает, как MS |
числа строк в |
Теперь нужно сделать так, |
случае функция ЕСЛИ продажам. Если ВыLookup table 2 совпадение значения «Lemons» более сложная формула, должен быть крайнимЧелябинск |
Болты |
диапазон ячеек, C2-:E7, |
.После того, как мы по убыванию. ЕслиАргумент в списке на EXCEL сопоставляет таблице — допротягивать чтобы при выборе вернет текстовую строку помните, то каждыйна основе известных |
в ячейках от |
Пример функции ГПР
составленная из нескольких левым в заданном05.05.124
в котором выполняетсяВ открывшемся окне произвели вышеуказанные действия, указано значениеначальная_позиция картинке ниже нетискомое_значение формулу сцепки на артикула автоматически выдавались «есть», иначе – отчёт – это названий товаров. Для A2 до A9. функций Excel, таких
для поиска диапазоне. |
3503 |
4 |
поиск значения, которые |
Мастера функций |
в поле |
«-1» |
можно использовать, чтобы |
значения 45, но |
со значениями в |
новые строки (хотя |
значения в остальных |
«нет». |
отдельная таблица, расположенная |
этого вставьте созданную |
Но так как |
какИтак, формула сЧелябинск9 нужно найти. Третийв категории |
«Номер» |
, то в случае, |
пропустить определенное количество можно найти позицию аргументе это можно упростить четырех строках. ВоспользуемсяЧтобы вычислить остальные значения |
на отдельном листе. |
ранее формулу в |
Вы не знаете,INDEXВПР08.05.125 аргумент — это«Ссылки и массивы»отобразится позиция слова если не обнаружено знаков. Допустим, что наибольшего значения, которое |
просматриваемый_массив. |
применением умной таблицы). |
функцией ИНДЕКС. Записываем «протянем» формулу из Чтобы формула работала качестве искомого значения в каком именно(ИНДЕКС), |
может быть такой: |
3151 |
7 столбец в диапазонищем наименование«Мясо» точное совпадение, функция функцию меньше либо равно,ЕслиЕсли нужно найти именно ее и параллельно ячейки C2 вниз верно, Вы должны для новой функции столбце находятся продажиSMALL=VLOOKUP(B2&» «&C2,Orders!$A&$2:$D$2,4,FALSE) |
Нижний Новгород |
ИНДЕКС и ПОИСКПОЗ примеры
10 ячеек, содержащий значение,«ИНДЕКС»в выбранном диапазоне. выдает самый близкийПОИСК чем искомое значение,тип_сопоставления число (в нашем изучаем синтаксис. для использования функции дать названия своимВПР за март, то(НАИМЕНЬШИЙ) и=ВПР(B2&» «&C2;Orders!$A&$2:$D$2;4;ЛОЖЬ)09.04.126 которое вы поиска., выделяем его и В данном случае к нему элементнужно использовать для
т.е. позицию значенияравен 0, то случае цена какМассив. В данном случае
автозаполнения. В результате таблицам (или диапазонам),: не сможете задатьROWЗдесь в столбцах B34388Четвертый аргумент не является жмем на кнопку она равна по возрастанию. Важно, работы с текстовой
40. |
функция ПОИСКПОЗ() находит |
раз число), то |
это вся таблица получим: |
причем все названия |
=VLOOKUP(VLOOKUP(A2,New_SKU,2,FALSE),Price,3,FALSE) |
номер столбца для |
(СТРОКА) и C содержатсяНижний Новгород |
11 |
обязательным. Введите TRUE |
«OK» |
«3» если ведется поиск строкой «МДС0093.МужскаяОдежда». Чтобы |
Это можно сделать с |
первое значение, которое |
вместо ВПР можно |
заказов. Выделяем ееКак видно, третьи элементы должны иметь общую |
=ВПР(ВПР(A2;New_SKU;2;ЛОЖЬ);Price;3;ЛОЖЬ) |
третьего аргумента функции |
Например, формула, представленная ниже, |
имена клиентов и02.05.12Формула или FALSE. Если |
. |
. |
не точного значения, |
найти первое вхождение помощью формулы =ПОИСКПОЗ(45;B31:B37;1) в |
использовать функцию |
вместе с шапкой |
списков не совпадают. |
|
часть. Например, так: |
Здесь |
ВПР |
|
находит все повторения |
названия продуктов соответственно, |
3471 |
|
Описание |
ввести значение ИСТИНА |
Далее открывается окошко, которое |
|
Данный способ хорош тем, |
а приблизительного, чтобы |
«М» в описательной |
|
Обратите внимание, что тип |
точности |
СУММЕСЛИМН (SUMIFS) |
|
и фиксируем клавишей |
Пример 3. Найти ближайшее |
CA_Sales |
|
Price |
. Вместо этого используется |
значения из ячейки |
|
а ссылка |
Нижний Новгород |
Результат |
|
или аргумент оставлен |
предлагает выбор варианта |
что если мы |
|
просматриваемый массив был |
части текстовой строки, |
сопоставления =1 (третий |
|
равно аргументу |
, появившуюся начиная с |
F4. |
|
меньшее числу 22 |
, |
– именованный диапазон |
|
функция |
F2 в диапазоне |
Orders!$A&$2:$D$2 |
|
04.05.12 |
=ГПР(«Оси»;A1:C4;2;ИСТИНА) |
пустым, функция возвращает |
|
оператора |
захотим узнать позицию |
упорядочен по возрастанию |
|
задайте для аргумента |
аргумент функции). |
искомое_значениеПросматриваемый_массив |
|
Excel 2007. По |
Номер строки. Если бы |
в диапазоне чисел, |
|
FL_Sales |
$A:$C |
ПОИСКПОЗ |
|
B2:B16 и возвращает |
определяет таблицу для |
3160 |
|
Поиск слова «Оси» в |
приблизительное значение, указать |
ИНДЕКС |
|
любого другого наименования, |
(тип сопоставления |
начальная_позиция |
|
3. Поиск позиции в |
может быть не |
идее, эта функция |
|
у нас требовалось |
хранящихся в столбце |
, |
|
в таблице |
, чтобы определить этот |
результат из тех |
|
поиска на другом |
Москва |
строке 1 и |
|
в качестве первого |
: для массива или |
то не нужно |
Дополнительные сведения о функциях поиска
-
«1»значение 8, чтобы
-
списке отсортированном по упорядочен.
-
выбирает и суммирует вывести одно значение,
support.office.com
Продвинутые примеры с функцией ВПР: поиск по нескольким критериям
таблицы Excel.TX_SalesLookup table 2 столбец. же строк в листе.18.04.12 возврат значения из аргумента. Если ввести для ссылки. Нам будет каждый раз) или убыванию (тип поиск не выполнялся убыванию выполняется аналогично,Если тип_сопоставления равен 1, числовые значения по мы бы написалиВид исходной таблицы данных:и так далее., аMATCH(«Mar»,$A$1:$I$1,0) столбце C.Чтобы сделать формулу более3328 строки 2, находящейся
- значение FALSE, функция нужен первый вариант.
- заново набирать или сопоставления в той части
- но с типом то функция ПОИСКПОЗ()
- нескольким (до 127!) какую-то конкретную цифру.
- Для поиска ближайшего большего Как видите, во
- 3ПОИСКПОЗ(«Mar»;$A$1:$I$1;0)
Поиск в Excel по нескольким критериям
{=IFERROR(INDEX($C$2:$C$16,SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3)),»»)} читаемой, Вы можетеМосква в том же будут соответствовать значение Поэтому оставляем в изменять формулу. Достаточно«-1» текста, которая является сопоставления = -1. находит наибольшее значение, условиям. Но если Но раз нам значения заданному во всех именах присутствует– это столбец
Пример 1: Поиск по 2-м разным критериям
В переводе на человеческий{=ЕСЛИОШИБКА(ИНДЕКС($C$2:$C$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3));»»)} задать имя для26.04.12 столбце (столбец A). в первом аргументе этом окне все просто в поле). серийным номером (в В этом случае которое меньше либо в нашем списке нужно, чтобы результат всем столбце A:A
«_Sales». C, содержащий цены. язык, данная формулаВведите эту формулу массива просматриваемого диапазона, и33684 предоставить. Другими словами, настройки по умолчанию«Заданное значение»Аргумент данном случае — функция ПОИСКПОЗ() находит равно, чем нет повторяющихся товаров
менялся, воспользуемся функцией
(числовой ряд может
ФункцияНа рисунке ниже виден означает: в несколько смежных тогда формула станетМосква=ГПР(«Подшипники»;A1:C4;3;ЛОЖЬ)
оставив четвертый аргумент и жмем навписать новое искомое«Тип сопоставления» «МДС0093»). Функция наименьшее значение, котороеискомое_значениеПросматриваемый_массив внутри одного месяца, ПОИСКПОЗ. Она будет пополняться новыми значениями)ДВССЫЛ результат, возвращаемый созданнойИщем символы «Mar» – ячеек, например, в выглядеть гораздо проще:29.04.12Поиск слова «Подшипники» в пустым, или ввести кнопку
слово вместо предыдущего.не является обязательным.ПОИСК больше либо равнодолжен быть упорядочен то она просто искать необходимую позицию используем формулу массивасоединяет значение в нами формулой: аргумент ячейки=VLOOKUP(B2&» «&C2,Orders,4,FALSE)
3420
строке 1 и
значение ИСТИНА —
«OK»
Обработка и выдача
Он может бытьначинает поиск с чем искомое значение. по возрастанию: …, выведет значение цены каждый раз, когда (CTRL+SHIFT+ENTER): столбце D иВ начале разъясним, чтоlookup_valueF4:F8=ВПР(B2&» «&C2;Orders;4;ЛОЖЬ)
Пример 2: ВПР по двум критериям с просматриваемой таблицей на другом листе
Москва возврат значения из обеспечивает гибкость.. результата после этого пропущенным, если в восьмого символа, находитФункции ПОИСКПОЗ() и ИНДЕКС() -2, -1, 0, для заданного товара мы будем менять=B2;A:A;»»));A:A;0);1)’ class=’formula’> текстовую строку «_Sales»,
мы подразумеваем под(искомое_значение);, как показано наЧтобы формула работала, значения01.05.12 строки 3, находящейсяВ этом примере показано,Открывается окно аргументов функции произойдет автоматически.
нем нет надобности. знак, указанный в часто используются вместе,
1, 2, ...,
и месяца:
артикул.Функция ПОИСКПОЗ возвращает позицию тем самым сообщая выражением «Динамическая подстановкаИщем в ячейках от рисунке ниже. Количество в крайнем левом3501 в том же
как работает функция.ИНДЕКСТеперь давайте рассмотрим, как В этом случае аргументе т.к. позволяют по
A-Z, ЛОЖЬ, ИСТИНА.
Плюсы
Записываем команду ПОИСКПОЗ и элемента в столбцеВПР данных из разных A1 до I1 ячеек должно быть столбце просматриваемой таблицыМосква столбце (столбец B). При вводе значения. В поле можно использовать его значение поискомый_текст
найденной позиции в Если: Не нужен дополнительный проставляем ее аргументы. A:A, имеющего максимальноев какой таблице таблиц», чтобы убедиться – аргумент равным или большим, должны быть объединены06.05.127
в ячейке B2«Массив»ПОИСКПОЗ умолчанию равно, в следующей позиции, одном диапазоне вывеститип_сопоставления столбец, решение легкоИскомое значение. В нашем значение среди чисел, искать. Если в правильно ли мыlookup_array чем максимально возможное точно так же,
Извлекаем 2-е, 3-е и т.д. значения, используя ВПР
Краткий справочник: обзор функции=ГПР(«П»;A1:C4;3;ИСТИНА) (первый аргумент) функцияуказываем адрес тогодля работы с«1» и возвращает число соответствующее значение изопущен, то предполагается, масштабируется на большее случае это ячейка, которые больше числа, ячейке D3 находится понимает друг друга.(просматриваемый_массив); число повторений искомого
как и в ВПРПоиск буквы «П» в ВПР ищет ячейки диапазона, где оператор числовыми выражениями.. Применять аргумент 9. Функция другого диапазона. Рассмотрим что он равен
количество условий (до в которой указывается указанного в ячейке значение «FL», формулаБывают ситуации, когда естьВозвращаем точное совпадение – значения. Не забудьте критерии поиска. НаФункции ссылки и поиска строке 1 и в диапазоне C2:E7ИНДЕКССтавится задача найти товар«Тип сопоставления»ПОИСК пример. 1. 127), быстро считает.
артикул, т.е. F13.
B2. Функция ИНДЕКС
выполнит поиск в несколько листов с аргумент нажать рисунке выше мы
- (справка) возврат значения из (2-й аргумент) ибудет искать название на сумму реализации
, прежде всего, имеет
всегда возвращает номер
- Найдем количество заданного товараЕслиМинусы Фиксируем ее клавишей возвращает значение, хранящееся
таблице
данными одного формата,
match_typeCtrl+Shift+Enter объединили значения иИспользование аргумента массива таблицы строки 3, находящейся возвращает ближайший Приблизительное продукции. В нашем
400 рублей или смысл только тогда, знака, считая от на определенном складе.тип_сопоставления: Работает только с
F4.
в найденной ячейке.
FL_Sales
- и необходимо извлечь(тип_сопоставления)., чтобы правильно ввести поставили между ними в функции ВПР
- в том же совпадение с третьего случае – это самый ближайший к
- когда обрабатываются числовые начала Для этого используемравен -1, то числовыми данными на
- Просматриваемый массив. Т.к. мыРезультат расчетов:, если «CA» – нужную информацию с
Использовав формулу массива. пробел, точно такВо второй части нашего столбце. Так как столбца в диапазоне,
столбец этой сумме по значения, а непросматриваемого текста формулу функция ПОИСКПОЗ() находит выходе, не применима ищем по артикулу,Для поиска ближайшего меньшего в таблице определенного листа в0Если Вам интересно понять, же необходимо сделать учебника по функции «П» найти не столбец E (3-й«Наименование товара»
Извлекаем все повторения искомого значения
возрастанию. текстовые., включая символы, которые=ИНДЕКС(B67:E71;ПОИСКПОЗ(A74;A67:A71;0);ПОИСКПОЗ(C74;B66:E66;0)) наименьшее значение, которое для поиска текста, значит, выделяем столбец значения достаточно лишьCA_Sales зависимости от значения,в третьем аргументе, как она работает, в первом аргументеВПР удалось, возвращается ближайшее аргумент)..
Прежде всего, нам нужноВ случае, если пропускаются, если значениеВ файле примера, соответствующий больше либо равно не работает в артикулов вместе с немного изменить данную
и так далее.
которое введено в
Вы говорите функции давайте немного погрузимся функции (B2&» «&C2).(VLOOKUP) в Excel из меньших значений:Четвертый аргумент пуст, поэтомуВ поле отсортировать элементы вПОИСКПОЗ аргумента столбец и строка чем старых версиях Excel шапкой. Фиксируем F4. формулу и ееРезультат работы функций
заданную ячейку. Думаю,ПОИСКПОЗ в детали формулы:Запомните!
Часть 1:
мы разберём несколько
"Оси" (в столбце
функция возвращает Приблизительное«Номер строки» столбцепри заданных настройкахначальная_позиция выделены с помощьюискомое_значениеПросматриваемый_массив (2003 и ранее).Тип сопоставления. Excel предлагает следует также ввестиВПР проще это объяснитьискать первое значение,IF($F$2=B2:B16,ROW(C2:C16)-1,»»)Функция примеров, которые помогут A).
совпадение. Если этобудет располагаться вложенная«Сумма» не может найтибольше 1.
Часть 2:
Условного форматирования.
должен быть упорядочен
О том, как спользовать три типа сопоставления: как массив (CTRL+SHIFT+ENTER):и на примере. в точности совпадающееЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»)ВПР Вам направить всю5 не так, вам функцияпо убыванию. Выделяем нужный элемент, тоСкопируйте образец данных изСОВЕТ: Подробнее о поиске по убыванию: ИСТИНА, связку функций больше, меньше иРезультат поиска:ДВССЫЛ
Часть 3:
Представьте, что имеются отчеты
с искомым значением.
$F$2=B2:B16ограничена 255 символами, мощь=ГПР(«Болты»;A1:C4;4) придется введите одноПОИСКПОЗ данную колонку и оператор показывает в следующей таблицы и позиций можно прочитать ЛОЖЬ, Z-A, …,ИНДЕКС (INDEX) точное совпадение. УФункция имеет следующую синтаксическуюбудет следующий: по продажам для Это равносильно значению– сравниваем значение она не можетВПРПоиск слова «Болты» в из значений в. Её придется вбить переходим во вкладку ячейке ошибку вставьте их в в соответствующем разделе 2, 1, 0,и нас конкретный артикул,
Часть 4:
запись:
Если данные расположены в
нескольких регионов сFALSE в ячейке F2 искать значение, состоящеена решение наиболее строке 1 и столбцах C и вручную, используя синтаксис,«Главная»«#Н/Д» ячейку A1 нового сайта: Поиск позиции. -1, -2, …,ПОИСКПОЗ (MATCH) поэтому выбираем точное=ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления]) разных книгах Excel, одинаковыми товарами и(ЛОЖЬ) для четвёртого
Часть 5:
с каждым из
из более чем
амбициозных задач Excel. возврат значения из D, чтобы получить о котором говорится. Щелкаем по значку. листа Excel. ЧтобыС помощью функций ПОИСКПОЗ() и так далее.в качестве более совпадение. В программеОписание аргументов: то необходимо добавить в одинаковом формате.
Двумерный поиск по известным строке и столбцу
аргумента значений диапазона B2:B16. 255 символов. Имейте Примеры подразумевают, что строки 4, находящейся результат вообще. в самом начале«Сортировка и фильтр»При проведении поиска оператор
отобразить результаты формул, и ИНДЕКС() можноФункция ПОИСКПОЗ() не различает мощной альтернативы ВПР оно значится какискомое_значение – обязательный аргумент, имя книги перед Требуется найти показатели
ВПР Если найдено совпадение, это ввиду и Вы уже имеете в том же
Функции ВПР и ПОИСКПОЗ
Когда вы будете довольны статьи. Сразу записываем, который расположен на не различает регистры выделите их и заменить функцию ВПР(), РеГИстры при сопоставлении я уже подробно 0 (ноль). На принимающий текстовые, числовые именованным диапазоном, например: продаж для определенного
.
то выражение
следите, чтобы длина базовые знания о столбце (столбец C). ВПР, ГПР одинаково название функции – ленте в блоке символов. Если в нажмите клавишу F2, об этом читайте текстов. описывал (с видео). этом аргументы ПОИСКПОЗ значения, а также=VLOOKUP($D$2,INDIRECT($D3&»Workbook1!_Sales»),2,FALSE) региона:Вот так Вы можетеСТРОКА(C2:C16)-1 искомого значения не том, как работает11 удобно использовать. Введите
«ПОИСКПОЗ»
«Редактирование»
массиве присутствует несколько а затем — клавишу в статье о
- Если функция ПОИСКПОЗ() не В нашем же закончились. данные логического и
- =ВПР($D$2;ДВССЫЛ($D3&»Workbook1!_Sales»);2;ЛОЖЬ)Если у Вас всего создать формулу длявозвращает номер соответствующей превышала этот лимит.
- эта функция. Если=ГПР(3;{1;2;3:»a»;»b»;»c»;»d»;»e»;»f»};2;ИСТИНА) те же аргументы,без кавычек. Затем
. В появившемся списке точных совпадений, то ВВОД. При необходимости функции ВПР(). находит соответствующего значения, случае, можно применитьНомер столбца. Опять же ссылочного типов, которыйЕсли функция два таких отчета, поиска по двум строки (значениеСоглашусь, добавление вспомогательного столбца нет, возможно, Вам
Поиск числа 3 в но он осуществляет открываем скобку. Первым выбираем пунктПОИСКПОЗ измените ширину столбцов,В этой статье описаны то возвращается значение
Функция СУММПРОИЗВ
их для поиска воспользуемся ПОИСКПОЗ. Искомым используется в качествеДВССЫЛ
то можно использовать
критериям в Excel,
Функции ИНДЕКС и ПОИСКПОЗ
-1 – не самое будет интересно начать трех строках константы поиск в строках аргументом данного оператора
«Сортировка от максимального к
выводит в ячейку
Именованные диапазоны и оператор пересечения
чтобы видеть все синтаксис формулы и ошибки #Н/Д. по нескольким столбцам значением будет ячейка критерия поиска (дляссылается на другую
- до безобразия простую что также известно,позволяет не включать изящное и не с первой части
- массива и возврат вместо столбцов. « является минимальному» позицию самого первого данные. использование функцийПроизведем поиск позиции в в виде формулы E14, где указано сопоставления величин или книгу, то эта формулу с функциями как двумерный поиск строку заголовков). Если
- всегда приемлемое решение. этого учебника, в значения из строкиЕсли вы хотите поэкспериментировать
«Искомое значение»
.
из них.ДанныеПОИСК НЕ сортированном списке массива. Для этого: наименование параметра, который нахождения точного совпадения);
книга должна бытьВПР или поиск в совпадений нет, функция Вы можете сделать которой объясняются синтаксис
- 2 того же с функциями подстановки,. Оно располагается на
После того, как былаДавайте рассмотрим на примереВыпискии текстовых значений (диапазонВыделите пустую зеленую ячейку,
Используем несколько ВПР в одной формуле
мы ищем (ТОВАР).просматриваемый_массив – обязательный аргумент, открытой. Если жеи двух направлениях.IF то же самое и основное применение (в данном случае — прежде чем применять листе в поле сортировка произведена, выделяем самый простой случай,Доход: маржаПОИСКБ
B7:B13 где должен быть Просматриваемый массив: шапка принимающий данные ссылочного она закрыта, функцияЕСЛИФункция(ЕСЛИ) возвращает пустую без вспомогательного столбца,ВПР третьего) столбца. Константа их к собственным«Приблизительная сумма выручки» ячейку, где будет когда с помощьюмаржав Microsoft Excel.) результат. с наименованиями, потому типа (ссылки на сообщит об ошибке
(IF), чтобы выбратьСУММПРОИЗВ строку. но в таком. Что ж, давайте массива содержит три данным, то некоторые. Указываем координаты ячейки, выводиться результат, и
- ПОИСКПОЗЗдесь «босс».ФункцииСтолбец Позиция приведен дляВведите в строке формул что искать система диапазон ячеек) или#REF!
нужный отчет для
(SUMPRODUCT) возвращает сумму
Результатом функции случае потребуется гораздо приступим. строки значений, разделенных образцы данных. Некоторые содержащей число запускаем окно аргументовможно определить местоФормулаПОИСК наглядности и не в нее следующую
- будет по слову константу массива, в(#ССЫЛ!). поиска: произведений выбранных массивов:IF более сложная формулаПоиск в Excel по точкой с запятой пользователи Excel, такие350
тем же путем,
указанного элемента в
ОписаниеИ влияет на вычисления. формулу: ТОВАР. Тип сопоставления: которых выполняется поискУрок подготовлен для Вас=VLOOKUP($D$2,IF($D3=»FL»,FL_Sales,CA_Sales),2,FALSE)=SUMPRODUCT(($A$2:$A$9=»Lemons»)*($A$1:$I$1=»Mar»),$A$2:$I$9)(ЕСЛИ) окажется вот
с комбинацией функций нескольким критериям (;). Так как
Динамическая подстановка данных из разных таблиц при помощи ВПР и ДВССЫЛ
как с помощью. Ставим точку с о котором шла массиве текстовых данных.РезультатПОИСКБФормула для поиска позиции
Нажмите в конце не 0. позиции элемента согласно командой сайта office-guru.ru=ВПР($D$2;ЕСЛИ($D3=»FL»;FL_Sales;CA_Sales);2;ЛОЖЬ)=СУММПРОИЗВ(($A$2:$A$9=»Lemons»)*($A$1:$I$1=»Mar»);$A$2:$I$9) такой горизонтальный массив:INDEXИзвлекаем 2-е, 3-е и «c» было найдено функции ВПР и
запятой. Вторым аргументом речь в первом Узнаем, какую позицию=ПОИСК(«и»;A2;6)находят одну текстовую значения Груши: =ПОИСКПОЗ(«груши»;B7:B13;0) Enter, а сочетаниеСинтаксис функции ИНДЕКС закончен.
критерию, заданному первымИсточник: https://www.ablebits.com/office-addins-blog/2014/07/29/vlookup-formula-examples/Где:В следующей статье я{1,»»,3,»»,5,»»,»»,»»,»»,»»,»»,12,»»,»»,»»}(ИНДЕКС) и т.д. значения, используя в строке 2 ГПР; другие пользователи является способе.
в диапазоне, в
Позиция первого знака "и"
строку в другой
- Формула находит первое значениеCtrl+Shift+Enter Как в итоге аргументом функции;Перевел: Антон Андронов$D$2 буду объяснять этиROW()-3MATCH
- ВПР того же столбца, предпочитают с помощью«Просматриваемый массив»В поле котором находятся наименования в строке ячейки и возвращают начальную сверху и выводит, чтобы ввести формулу
- выглядит формула, видно[тип_сопоставления] – необязательный дляАвтор: Антон Андронов– это ячейка, функции во всехСТРОКА()-3(ПОИСКПОЗ).Извлекаем все повторения искомого что и 3, функций индекс и.«Искомое значение» товаров, занимает слово A2, начиная с позицию первой текстовой его позицию в
не как обычную, на скриншоте выше. заполнения аргумент вФункция ПОИСКПОЗ в Excel содержащая название товара. деталях, так чтоЗдесь функцияВы уже знаете, что значения возвращается «c».
ПОИСКПОЗ вместе. ПопробуйтеПОИСКПОЗвбиваем число«Сахар» шестого знака. строки (считая от диапазоне, второе значение а как формулу Видим, что артикул виде числового значения, используется для поиска Обратите внимание, здесь сейчас можете простоROWВПРДвумерный поиск по известнымc каждый из методовбудет просматривать тот«400».7 первого символа второй
Груши учтено не
массива.
3516 действительно у
- определяющего способ поиска точного совпадения или мы используем абсолютные скопировать эту формулу:(СТРОКА) действует как
- может возвратить только строке и столбцуВ этом примере последней и посмотрите, какие диапазон, в котором. В полеВыделяем ячейку, в которую
- =ПОИСК(A4;A3) текстовой строки). Например, будет.Как это на самом арахиса. Протянем формулу в диапазоне ячеек ближайшего (меньшего или ссылки, чтобы избежать=INDEX($A$2:$I$9,MATCH(«Lemons»,$A$2:$A$9,0),MATCH(«Mar»,$A$1:$I$1,0)) дополнительный счётчик. Так одно совпадающее значение,Используем несколько ВПР в использует функций индекс из них подходящий находится сумма выручки
Как работают ДВССЫЛ и ВПР
«Просматриваемый массив» будет выводиться обрабатываемыйНачальная позиция строки «маржа» чтобы найти позицию
Чтобы найти номер строки,
деле работает:
на остальные строки или массиве. Может большего заданному в изменения искомого значения=ИНДЕКС($A$2:$I$9;ПОИСКПОЗ(«Lemons»;$A$2:$A$9;0);ПОИСКПОЗ(«Mar»;$A$1:$I$1;0)) как формула скопирована точнее – первое одной формуле и ПОИСКПОЗ вместе
- вариант. и искать наиболееуказываем координаты столбца результат. Щелкаем по (искомая строка в
- буквы «n» в а не позицииФункция ИНДЕКС выдает из и проверим. Теперь, принимать следующие значения:
зависимости от типа при копировании формулыЕсли Вы не в в ячейки F4:F9, найденное. Но какДинамическая подстановка данных из для возвращения раннюю
Скопируйте следующие данные в приближенную к 350«Сумма» значку ячейке A4) в слове «printer», можно в искомом диапазоне, диапазона цен C2:C161 меняя артикул товара,-1 – поиск наименьшего сопоставления, указанного в в другие ячейки. восторге от всех мы вычитаем число быть, если в разных таблиц номер счета-фактуры и пустой лист. рублям. Поэтому в. В поле«Вставить функцию» строке «Доход: маржа» использовать следующую функцию:
можно записать следующую содержимое N-ой ячейки мы будем видеть, ближайшего значения заданному качестве аргумента) значения$D3 этих сложных формул3 просматриваемом массиве этоФункция его соответствующих датыСовет: данном случае указываем«Тип сопоставления»около строки формул. (ячейка, в которой=ПОИСК(«н»;»принтер») формулу: =ПОИСКПОЗ(«груши»;B7:B13;0)+СТРОКА($B$6)
по порядку. При кто его купил, аргументом искомое_значение в заданному в массиве– это ячейка
Excel, Вам можетиз результата функции, значение повторяется несколькоВПР для каждого из
Прежде чем вставлять
координаты столбца
устанавливаем значениеПроизводится запуск выполняется поиск — A3).Эта функция возвращаетЕсли искомое значение не этом порядковый номер сколько и почем. упорядоченном по убыванию или диапазоне ячеек с названием региона.
понравиться вот такой чтобы получить значение
раз, и Вы
в Excel –
пяти городов. Так
office-guru.ru
Пример функции ПОИСКПОЗ для поиска совпадения значений в Excel
данные в Excel,«Сумма выручки»«-1»Мастера функций84 обнаружено в списке, нужной ячейки нам массиве или диапазоне и возвращает номер Используем абсолютную ссылку
Примеры использования функции ПОИСКПОЗ в Excel
наглядный и запоминающийся1 хотите извлечь 2-е это действительно мощный как дата возвращаются установите для столбцов. Опять ставим точку, так как мы. Открываем категорию=ЗАМЕНИТЬ(A3;ПОИСК(A4;A3);6;»объем»), так как «н»
то будет возвращено находит функция ПОИСКПОЗ.Функция ИНДЕКС также помогает ячеек. позиции найденного элемента. для столбца и способ:в ячейке или 3-е из инструмент для выполнения в виде числа, A – С с запятой. Третьим производим поиск равного«Полный алфавитный перечень»Заменяет слово «маржа» словом
является четвертым символом значение ошибки #Н/Д. Она ищет связку выделить из массива0 – (по умолчанию)Например, имеем последовательный ряд относительную ссылку дляВыделите таблицу, откройте вкладкуF4 них? А что поиска определённого значения мы используем функцию ширину в 250 аргументом является или большего значенияили «объем», определяя позицию в слове «принтер». Например, формула =ПОИСКПОЗ(«грейпфрут»;B7:B13;0) названия товара и максимальное число. Рассмотрим
поиск первого значения чисел от 1 строки, поскольку планируемFormulas(строка 4, вычитаем
если все значения?
Формула для поиска неточного совпадения текста в Excel
в базе данных. текст отформатировать его пикселей и нажмите«Тип сопоставления» от искомого. После
«Ссылки и массивы»
слова «маржа» вМожно также находить слова вернет ошибку, т.к.
месяца (
тот же самый
- в массиве или до 10, записанных копировать формулу в(Формулы) и нажмите 3), чтобы получить Задачка кажется замысловатой,
- Однако, есть существенное как дату. Результат кнопку
- . Так как мы выполнения всех настроек
. В списке операторов ячейке A3 и в других словах. значения «грейпфрут» в
НектаринЯнварь
Сравнение двух таблиц в Excel на наличие несовпадений значений
пример. Попробуем определить диапазоне ячеек (не в ячейках B1:B10. другие ячейки тогоCreate from Selection2 но решение существует! ограничение – её функции ПОИСКПОЗ фактическиПеренос текста
будем искать число
жмем на кнопку ищем наименование заменяя этот знак Например, функция диапазоне ячеек) по очереди во
максимальные значения купленного обязательно упорядоченном), которое Функция =ПОИСКПОЗ(3;B1:B10;0) вернет же столбца.(Создать из выделенного).в ячейкеПредположим, в одном столбце синтаксис позволяет искать используется функция индекс(вкладка « равное заданному или«OK»«ПОИСКПОЗ» и последующие пять=ПОИСК(«base»;»database»)B7:B13 всех ячейках склеенного количества товара, цены полностью совпадает со число 3, посколькуFL_SalОтметьте галочкамиF5 таблицы записаны имена
только одно значение. аргументом. Сочетание функцийГлавная самое близкое меньшее,.. Найдя и выделив
знаков текстовой строкойвозвращает
Поиск ближайшего большего знания в диапазоне чисел Excel
нет. из двух столбцов и суммы. значением, переданным в искомое значение находится
es
Top row(строка 5, вычитаем клиентов (Customer Name), Как же быть, индекс и ПОИСКПОЗ», группа « то устанавливаем тут
Результат обработки выводится в
его, жмем на «объем.»5В файле примера можно диапазона A2:A161&B2:B161 иНачнем с количества. В качестве первого аргумента. в ячейке B3,и
(в строке выше)
3) и так а в другом если требуется выполнить используются два разаВыравнивание цифру
предварительно указанную ячейку.
Особенности использования функции ПОИСКПОЗ в Excel
кнопкуДоход: объем
, так как слово
найти применение функции
- выдает порядковый номер любой ячейке под1 – Поиск наибольшего которая является третьейCA_Sales и далее. – товары (Product), поиск по нескольким
- в каждой формуле»).«1» Это позиция«OK»=ПСТР(A3;ПОИСК(» «;A3)+1,4) «base» начинается с при поиске в ячейки, где нашла
- этим столбцом пишем ближайшего значения заданному от точки отсчета– названия таблицLeft columnSMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3)) которые они купили.
- условиям? Решение Вы — сначала получитьПлотность. Закрываем скобки.«3»в нижней части
- Возвращает первые четыре знака, пятого символа слова горизонтальном массиве. точное совпадение. По =ИНДЕКС. первым аргументом в (ячейки B1). (или именованных диапазонов),
- (в столбце слева).НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3)) Попробуем найти 2-й, найдёте далее. номер счета-фактуры, аВязкость
Третий аргумент функции
- . Ей соответствует окна. которые следуют за «database». Можно использоватьПоиск позиции можно производить сути, это первыйПервым аргументом у нас упорядоченном по возрастаниюДанная функция удобна для в которых содержаться Microsoft Excel назначитФункция 3-й и 4-й
- Предположим, у нас есть затем для возвратаТемператураИНДЕКС«Картофель»
- Активируется окно аргументов оператора первым пробелом в функции не только в способ, но ключевой будет не просто массиве или диапазоне использования в случаях, соответствующие отчеты о имена диапазонам изSMALL
- товары, купленные заданным список заказов и даты.0,457«Номер столбца». Действительно, сумма выручкиПОИСКПОЗ строке «Доход: маржа»
exceltable.com
Функции ИНДЕКС и ПОИСКПОЗ в Excel и примеры их использования
ПОИСК диапазонах ячеек, но столбец создается виртуально массив, а максимальное ячеек. когда требуется вернуть продажах. Вы, конечно значений в верхней(НАИМЕНЬШИЙ) возвращает
клиентом. мы хотим найтиСкопируйте всю таблицу и3,55оставляем пустым. После от реализации этого. Как видим, в (ячейка A3).и и в массивах прямо внутри формулы, число из массива.Примечания: не само значение, же, можете использовать строке и левом
Пример использования функций ИНДЕКС и ПОИСКПОЗ
n-оеПростейший способ – добавитьКоличество товара вставьте ее в500 этого жмем на продукта самая близкая
данном окне помаржПОИСКБ констант. Например, формула а не в Поэтому дополнительно используемЕсли в качестве аргумента содержащееся в искомой обычные названия листов столбце Вашей таблицы.наименьшее значение в вспомогательный столбец перед
(Qty.), основываясь на ячейку A1 пустого0,525 кнопку к числу 400 числу количества аргументов=ПОИСК(«»»»;A5)для определения положения =ПОИСКПОЗ(«груши»;{«яблоки»;»ГРУШИ»;»мандарины»};0) вернет значение ячейках листа. команду МАКС и искомое_значение была передана ячейке, а ее и ссылки на Теперь Вы можете массиве данных. В столбцом двух критериях – листа Excel.3,25«OK» по возрастанию и
имеется три поля.Позиция первой двойной кавычки символа или текстовой 2.Плюсы выделяем соответствующий массив. текстовая строка, функция координату относительно рассматриваемого
диапазоны ячеек, например осуществлять поиск, используя нашем случае, какуюCustomer NameИмя клиентаСовет:
400. составляет 450 рублей. Нам предстоит их («) в ячейке строки в другойЕсли искомое значение точно: Не нужен отдельныйВ принципе, нам больше ПОИСКПОЗ вернет позицию диапазона. В случае‘FL Sheet’!$A$3:$B$10 эти имена, напрямую,
по счёту позициюи заполнить его
(Customer) и Прежде чем вставлять данные0,606Как видим, функцияАналогичным образом можно произвести заполнить.
A5. текстовой строке, а не известно, то столбец, работает и не нужны никакие
элемента в массиве использования для констант, но именованные диапазоны без создания формул. (от наименьшего) возвращать именами клиентов сНазвание продукта в Excel, установите2,93ИНДЕКС поиск и самой
Так как нам нужно5 затем вернуть текст с помощью подстановочных с числами и аргументы, но требуется (если такой существует) массивов, которые могут гораздо удобнее.В любой пустой ячейке – определено функцией номером повторения каждого
(Product). Дело усложняется для столбцов A300при помощи оператора близкой позиции к найти позицию слова=ПСТР(A5;ПОИСК(«»»»;A5)+1;ПОИСК(«»»»;A5;ПОИСК(«»»»;A5)+1)-ПОИСК(«»»»;A5)-1) с помощью функций знаков можно задать с текстом. ввести номер строки без учета регистра быть представлены как
Однако, когда таких таблиц
Поиск индекса максимального числа массива в Excel
запишитеROW имени, например, тем, что каждый – D ширину0,675ПОИСКПОЗ«400»
«Сахар»Возвращает из ячейки A5ПСТР поиск по шаблону,
Минусы и столбца. В символов. Например, строки массивы элементов «ключ» много, функция=имя_строки имя_столбца(СТРОКА) (смотри Часть
John Doe1 из покупателей заказывал в 250 пикселей2,75в заранее указаннуюпо убыванию. Тольков диапазоне, то
только текст, заключенныйи
т.е. искомое_значение может: Ощутимо тормозит на таком случае напишем «МоСкВа» и «москва» — «значение», функцияЕСЛИ
exceltable.com
Поиск и подстановка по нескольким условиям
Постановка задачи
, например, так: 2). Так, для, несколько видов товаров, и нажмите кнопку250 ячейку выводит наименование для этого нужно вбиваем это наименование в двойные кавычки.ПСТРБ содержать знаки шаблона: больших таблицах (как два нуля. являются равнозначными. Для ПОИСКПОЗ возвращает значение– это не=Lemons Mar ячейкиJohn Doe2 как это видноПеренос текста0,746«Чай» произвести фильтрацию данных
в полебоссили заменить его звездочку (*) и
и все формулыСкачать примеры использования функций различения регистров можно ключа, который явно лучшее решение. Вместо… или наоборот:F4и т.д. Фокус из таблицы ниже:(вкладка «2,57. Действительно, сумма от по возрастанию, а«Искомое значение»Одним из наиболее востребованных с помощью функций знак вопроса (?).
Способ 1. Дополнительный столбец с ключом поиска
массива, впрочем), особенно ИНДЕКС и ПОИСКПОЗ дополнительно использовать функцию не указан. нее можно использовать=Mar Lemonsфункция с нумерацией сделаемОбычная функцияГлавная200 реализации чая (300
в поле. операторов среди пользователейЗАМЕНИТЬ Звездочка соответствует любой если указывать диапазоныПолучили простейшую формулу, помогающую СОВПАД.Например, массив {«виноград»;»яблоко»;»груша»;»слива»} содержит
функциюПомните, что имена строкиНАИМЕНЬШИЙ({массив};1) при помощи функцииВПР», группа «0,835 рублей) ближе всего«Тип сопоставления»
В поле Excel является функцияи последовательности знаков, знак
«с запасом» или вывести максимальное значениеЕсли поиск с использованием элементы, которые можноДВССЫЛ и столбца нужновозвращаетCOUNTIFне будет работатьВыравнивание2,38 по убыванию к
Способ 2. Функция СУММЕСЛИМН
аргументов функции установить«Просматриваемый массив»ПОИСКПОЗЗАМЕНИТЬБ вопроса соответствует любому сразу целые столбцы из массива. Протянем рассматриваемой функции не представить как: 1(INDIRECT), чтобы возвратить разделить пробелом, который1-й(СЧЁТЕСЛИ), учитывая, что по такому сценарию,»).150 сумме 350 рублей значениенужно указать координаты. В её задачи. Эти функции показаны
одиночному знаку. (т.е. вместо A2:A161 ее вправо, получив дал результатов, будет – «виноград», 2 нужный диапазон поиска.
в данном случае(наименьший) элемент массива, имена клиентов находятся поскольку она возвратитСчет0,946 из всех имеющихся«1»
Способ 3. Формула массива
самого диапазона. Его входит определение номера в примере 1Предположим, что имеется перечень вводить A:A и аналогичную информацию по возвращен код ошибки – «яблоко», 3Как Вы, вероятно, знаете, работает как оператор то есть в столбце B: первое найденное значение,Город2,17
- в обрабатываемой таблице. можно вбить вручную,
- позиции элемента в данной статьи. товаров и мы
- т.д.) Многим непривычны цене и сумме. #Н/Д. – «груша», 4 функция пересечения.1
=B2&COUNTIF($B$2:B2,B2) соответствующее заданному искомому
Дата выставления счета100 значений.Урок: но проще установить заданном массиве данных.Важно: не знаем точно формулы массива вЕсли вы продвинутый пользовательЕсли аргумент [тип_сопоставления] явно – «слива», гдеДВССЫЛПри вводе имени, Microsoft. Для ячейки=B2&СЧЁТЕСЛИ($B$2:B2;B2) значению. Например, еслиСамая ранняя счет по1,09Если мы изменим числоСортировка и фильтрация данных курсор в поле Наибольшую пользу она
как записана товарная принципе (тогда вам Microsoft Excel, то не указан или 1, 2, 3,
используется для того, Excel будет показыватьF5После этого Вы можете Вы хотите узнать городу, с датой1,95 в поле в Excel и выделить этот приносит, когда применяетсяЭти функции могут быть позиция относящаяся к сюда).
planetaexcel.ru
должны быть знакомы
Найдем текстовые значения, удовлетворяющие заданному пользователем критерию. Поиск будем осуществлять в диапазоне с повторяющимися значениями. При наличии повторов, можно ожидать, что критерию будет соответствовать несколько значений. Для их вывода в отдельный диапазон удобно использовать формулы массива.
Пусть Исходный список значений (например, перечень инструментов) находится в диапазоне
A10:A19
(см.
Файл примера
).
Задача
Выведем в отдельный диапазон значения, которые удовлетворяют критерию. Рассмотрим различные варианты поиска.
А. Найти значения, которые содержат критерий
Для удобства создадим
именованный диапазон
Список
.
Диапазон может охватить в том числе и незаполненные ячейки перечня. В дальнейшем пользователь может расширить перечень инструментов, указанные ниже формулы автоматически учтут новые значения.
Выведем в отдельный диапазон все значения Исходного списка, в которых
содержится
текст-критерий (например, слово
дрель
). Критерий вводится в ячейку
С6
.
Для создания списка, содержащего найденные значения, воспользуемся
формулой массива
:
=ИНДЕКС(Список; НАИМЕНЬШИЙ( ЕСЛИ(ЕСЛИОШИБКА(ПОИСК($C$6;Список);0)>0;СТРОКА(Список)-СТРОКА($A$9);30); СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))
Алгоритм работы формулы следующий (для просмотра промежуточных шагов работы формулы воспользуйтесь
клавишей
F9
):
-
Функция
ПОИСК()
, перебирая элементы исходного списка, определяет, содержится ли в нем значение-критерий. Если значение не содержится, то возвращается ошибка #ЗНАЧ! В противном случае возвращается числовое значение, соответствующее номеру начальной позиции вхождения критерия в значение из списка (здесь нам не важен номер позиции, важно, что это число); -
Функция
ЕСЛИОШИБКА()
используется для подавления ошибки #ЗНАЧ! заменяя ее на число 0; -
Функция
ЕСЛИ()
заменяет числовые значения, возвращенные функцией
ПОИСК()
, на номер позиции значения в списке. Если значение =0 (соответствует ошибке #ЗНАЧ!), то возвращается число 30. В принципе, вместо 30 можно указать любое число, которое больше номера последней заполненной позиции Исходного списка (это нужно для правильной сортировки функцией
НАИМЕНЬШИЙ()
); -
Функция
НАИМЕНЬШИЙ()
сортирует массив номеров строк по возрастанию; -
Функция
ДВССЫЛ()
возвращаетмассив последовательных чисел
;
-
Функция
ИНДЕКС()
возвращает текстовые значения из Исходного списка, из строк, номера которых были получены на предыдущем шаге.
В предельном случае м.б. найдено столько же значений, сколько содержится в исходном списке (когда все значения удовлетворяют критерию). Поэтому
формулу массива
нужно распространять на диапазон той же размерности, что и исходный список. Вышеуказанная
формула массива будет возвращать несколько значений
, поэтому перед вводом формулы нужно выделить сразу весь диапазон, т.е. ячейки
С10:С19
, ввести формулу в
Строке формул
и нажать
CRTL+SHIFT+ENTER
.
Для скрытия ошибок #ССЫЛКА!, возвращаемой формулой массива, к диапазону
С10:С19
применено правило
Условного форматирования
.
Б. Найти значения, которые совпадают с критерием (точное совпадение)
В этом случае будут выведены все значения, которые совпадают с критерием (без
учета РЕгиСТра
). Критерий вводится в ячейку
E
6
.
Для создания списка, содержащего найденные значения, воспользуемся
формулой массива
:
=ИНДЕКС(Список; НАИМЕНЬШИЙ( ЕСЛИ($E$6=Список;СТРОКА(Список)-СТРОКА($A$9);30); СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))
B. Найти значения, которые начинаются с критерия
В этом случае будут выведены все значения, которые начинаются или совпадают с критерием. Критерий вводится в ячейку
G
6
.
Для создания списка, содержащего найденные значения, воспользуемся
формулой массива
: =
ИНДЕКС(Список;НАИМЕНЬШИЙ( ЕСЛИ(ЕСЛИОШИБКА(ПОИСК($G$6;Список);0)=1;СТРОКА(Список)-СТРОКА($A$9);30); СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))
Г. Найти значения, которые заканчиваются на критерий
В этом случае будут выведены все значения, которые заканчиваются или совпадают с критерием. Критерий вводится в ячейку
I
6
.
Для создания списка, содержащего найденные значения, воспользуемся
формулой массива
:
=ИНДЕКС(Список;НАИМЕНЬШИЙ( ЕСЛИ($I$6=ПРАВСИМВ(Список;ДЛСТР($I$6));СТРОКА(Список)-СТРОКА($A$9);30); СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))
СОВЕТ:
О поиске текстовых значений с использованием
подстановочных знаков
читайте в статье
Поиск текстовых значений в списках. Часть2. Подстановочные знаки
. В статье
Выделение ячеек c ТЕКСТом с применением Условного форматирования
приведено решение аналогичной задачи с использованием
Условного форматирования
.
На чтение 7 мин. Просмотров 30k.
Содержание
- Получить первое не пустое значение в списке
- Получить первое текстовое значение в списке
- Получить первое текстовое значение с ГПР
- Получить позицию последнего совпадения
- Получить последнее совпадение содержимого ячейки
- Получить n-е совпадение
- Получить n-ое совпадение с ИНДЕКС/ПОИСКПОЗ
- Получить n-ое совпадение с ВПР
- Если ячейка содержит одну из многих вещей
- Поиск первой ошибки
- Поиск следующего наибольшего значения
- Несколько совпадений в списке, разделенных запятой
- Частичное совпадение чисел с шаблоном
- Частичное совпадение с ВПР
- Положение первого частичного совпадения
Получить первое не пустое значение в списке
{ = ИНДЕКС( диапазон ; ПОИСКПОЗ( ЛОЖЬ; ЕПУСТО ( диапазон ); 0 )) }
Если вам нужно получить первое не пустое значение (текст или число) в диапазоне в одной колонке вы можете использовать формулу массива на основе функций ИНДЕКС, ПОИСКПОЗ и ЕПУСТО.
В данном примере мы используем эту формулу:
{ = ИНДЕКС( B3: B11; ПОИСКПОЗ( ЛОЖЬ; ЕПУСТО ( B3: B11 ); 0 )) }
Таким образом, суть проблемы заключается в следующем: мы хотим получить первую не пустую ячейку, но для этого нет конкретной формулы в Excel. Мы могли бы использовать ВПР с шаблоном *, но это будет работать только для текста, а не для чисел.
Таким образом, нам нужно строить функциональные возможности для нужных нам формул. Способ сделать это состоит в использовании функции массива, которая «тестирует» ячейки и возвращает массив истина/ложь значения, которые мы можем сопрягать с ПОИСКПОЗ.
Работая изнутри, ЕПУСТО оценивает ячейки в диапазоне В3: В11 и возвращает результат и массив, который выглядит следующим образом:
{ИСТИНА; ЛОЖЬ; ИСТИНА; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА}
Каждая ЛОЖЬ представляет собой ячейку в диапазоне, который не является пустой.
Далее, ПОИСКПОЗ ищет ЛОЖЬ внутри массива и возвращает позицию первого наденного совпадения, в этом случае 2. На данный момент, формула в примере теперь выглядит следующим образом:
{ = ИНДЕКС( B3: B11; 2; 0 )) }
И, наконец, функция ИНДЕКС выводит значение в положении 2 в массиве, в этом случае число 10.
Получить первое текстовое значение в списке
= ВПР ( «*»; диапазон; 1; ЛОЖЬ)
Если вам нужно получить первое текстовое значение в списке (диапазон один столбец), вы можете использовать функцию ВПР, чтобы установить точное соответствие, с шаблонным символом для поиска.
В данном примере формула в D7 является:
= ВПР ( «*» ; B5: B11 ; 1 ; ЛОЖЬ)
Групповой символ звездочка (*) соответствует любому текстовому значению.
Получить первое текстовое значение с ГПР
= ГПР ( «*»; диапазон; 1; ЛОЖЬ)
Для поиска и получения первого текстового значения во всем диапазоне столбцов, вы можете использовать функцию ГПР с групповым символом. В примере формула в F5 является:
= ГПР ( «*»; С5: Е5; 1; 0 )
Значение поиска является «*», групповым символом, который соответствует одному или более текстовому значению.
Получить позицию последнего совпадения
{ = МАКС( ЕСЛИ ( Величины = знач ; СТРОКА(величина) — СТРОКА(ИНДЕКС( Величины; 1 ; 1 )) + 1 )) }
Для того, чтобы получить позицию последнего совпадения (т.е. последнего вхождения) от значения поиска, вы можете использовать формулу, основанную на ЕСЛИ, СТРОКА, ИНДЕКС, ПОИСКПОЗ и MAКС функций.
В примере формула в G6:
=МАКС(ЕСЛИ(B4:B11=G5;СТРОКА(B4:B11)-СТРОКА(ИНДЕКС(B4:B11;1;1))+1))
Суть этой формулы состоит в том, что мы строим список номеров строк для данного диапазона, соответствующие по значению, а затем используем функцию MAКС, чтобы получить наибольшее количество строк, что соответствует последнему значению соответствия.
Получить последнее совпадение содержимого ячейки
= ПРОСМОТР( 2 ; 1 / ПОИСК ( вещи ; А1 ); вещи )
Чтобы проверить ячейку для одной из нескольких вещей, и вернуть последнее совпадение, найденное в списке, вы можете использовать формулу, основанную на ПРОСМОТР и ПОИСК функций. В случае нескольких найденных совпадений, формула вернет последнее совпадение из списка «вещей».
В примере формула в С5:
=ПРОСМОТР(2;1/ПОИСК($E$4:$E$7;B4);$E$4:$E$7)
Получить n-е совпадение
= НАИМЕНЬШИЙ( ЕСЛИ( логический тест; СТРОКА( список ) — МИН( СТРОКА( список )) + 1 ); n )
Для того, чтобы получить позицию n-го совпадения (например, второе значение соответствия заданному, третье значение соответствия и т.д.), вы можете использовать формулу, основанную на функции НАИМЕНЬШИЙ.
= НАИМЕНЬШИЙ( ЕСЛИ( список = E5 ; СТРОКА( список ) — МИН( СТРОКА( список )) + 1 ); F5 )
Эта формула возвращает позицию второго появления «красных» в списке.
Сутью этой формулы является функция НАИМЕНЬШИЙ, которая просто возвращает n-е наименьшее значение в списке значений, которое соответствует номеру строки. Номера строк были «отфильтрованы» функцией ЕСЛИ, которая применяет логику для совпадения.
Получить n-ое совпадение с ИНДЕКС/ПОИСКПОЗ
{ = ИНДЕКС( массив; НАИМЕНЬШИЙ( ЕСЛИ( величины = знач ; СТРОКА ( величины ) — СТРОКА ( ИНДЕКС( величины; 1 ; 1 )) + 1 ); n-й )) }
Чтобы получить n-ое совпадение, используя ИНДЕКС и ПОИСКПОЗ, вы можете использовать формулу массива с функциями ЕСЛИ и НАИМЕНЬШИЙ, чтобы выяснить номер строки совпадения.
Получить n-ое совпадение с ВПР
= ВПР( id_формулы; стол; 4; 0 )
Чтобы получить n-ое совпадение с ВПР, вам необходимо добавить вспомогательный столбец в таблицу , которая строит уникальный идентификатор , который включает счетчик.
Эта формула зависит от вспомогательного столбца, который добавляется в качестве первого столбца таблицы исходных данных. Вспомогательный столбец содержит формулу, которая строит уникальное значение взгляда вверх от существующего идентификатора и счетчика. Счетчик подсчитывает сколько раз уникальный идентификатор появился в таблице данных.
В примере, формула ячейки J6 вспомогательного столбца выглядит следующим образом:
=ВПР(J3&»-«&I6;B4:G11;4;0)
Если ячейка содержит одну из многих вещей
{ = ИНДЕКС( результаты ;ПОИСКПОЗ( ИСТИНА ; ЕЧИСЛО( ПОИСК( вещи ; A1 )); 0 )) }
Чтобы проверить ячейку для одной из нескольких вещей, и вернуть пользовательский результат для первого найденного совпадения, вы можете использовать формулу ИНДЕКС/ПОИСКПОЗ, основанную на функции поиска.
{ = ИНДЕКС( результаты ; ПОИСКПОЗ( ИСТИНА ; ЕЧИСЛО( ПОИСК ( вещи ; B5 )); 0 )) }
Эта формула использует два названных диапазона: E5: E8 называется «вещи» и F5: F8 называется «Результаты». Убедитесь, что вы используете диапазоны имен с одинаковыми именами (на основе ваших данных). Если вы не хотите использовать именованные диапазоны, используйте абсолютные ссылки вместо этого.
Поиск первой ошибки
{ = ПОИСКПОЗ( ИСТИНА ; ЕОШИБКА(диап ); 0 ) }
Если вам нужно найти первую ошибку в диапазоне ячеек, вы можете использовать формулу массива, основанную на ПОИСКПОЗ и ЕОШИБКА функциях.
В приведенном примере формула:
{ = ПОИСКПОЗ( ИСТИНА ; ЕОШИБКА( B4: B11 ); 0 ) }
Работая изнутри, функция ЕОШИБКА возвращает значение ИСТИНА, если значение является признанной ошибкой, и ЛОЖЬ, если нет.
Когда дается диапазон ячеек (массив ячеек) функция ЕОШИБКА будет возвращать массив истина/ложь значений. В примере, это результирующий массив выглядит следующим образом:
{ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ЛОЖЬ; ЛОЖЬ}
Обратите внимание, что 6-е значение (что соответствует 6-й ячейке в диапазоне) истинно, так как ячейка В9 содержит #Н/A.
Поиск следующего наибольшего значения
=ИНДЕКС ( данные; ПОИСКПОЗ( поиск ; значения ) + 1 )
Для того, чтобы найти «следующее наибольшее» значение в справочной таблице, можно использовать формулу, основанную на ИНДЕКС и ПОИСКПОЗ. В примере формула в F6 является:
=ИНДЕКС(C5:C9;ПОИСКПОЗ(F4;B5:B9)+1)
Несколько совпадений в списке, разделенных запятой
{ = ОБЪЕДИНИТЬ ( «;» ; ИСТИНА ; ЕСЛИ( диапазон1 = E5 ; диапазон2 ; «» )) }
Для поиска и извлечения нескольких совпадений, разделенных запятыми (в одной ячейке), вы можете использовать функцию ЕСЛИ с функцией ОБЪЕДИНИТЬ.
{ = ОБЪЕДИНИТЬ( «;» ; ИСТИНА ; ЕСЛИ( группа = E5 ; имя ; «» )) }
Эта формула использует «имя» — именованный диапазон (B5: B11) и «группа» — (C5: C11).
Частичное совпадение чисел с шаблоном
{ = ПОИСКПОЗ( «*» & номер & «*» ; ТЕКСТ( диапазон ; «0» ); 0 ) }
Для того, чтобы выполнить частичное совпадение (подстроки) против чисел, вы можете использовать формулу массива, основанную на ПОИСКПОЗ и ТЕКСТ.
Excel поддерживает символы подстановки «*» и «?». Тем не менее, если вы используете специальные символы с номером, вы будете преобразовывать числовое значение в текстовое значение. Другими словами, «*» & 99 & «*» = «* 99 *» (текстовая строка).
Если попытаться найти текстовое значение в диапазоне чисел, совпадение завершится неудачно.
Решение
Одно из решений заключается в преобразовании чисел в диапазоне поиска для текстовых значений, а затем сделать нормальный поиск с ПОИСКПОЗ, ВПР и т.д.
Другой вариант
Другой способ, чтобы преобразовать числа в текст, чтобы сцепить пустую строку. Эта формула работает так же, как выше формуле:
= ПОИСКПОЗ ( «*» & Е5 & «*» ; В5: В10 & «» ; 0 )
Частичное совпадение с ВПР
Если вы хотите получить информацию из таблицы на основе частичного совпадения, вы можете сделать это с помощью ВПР в режиме точного соответствия, и групповые символы.
В примере формула ВПР выглядит следующим образом:
=ВПР($H$2&»*»;$B$3:$E$12;2;0)
В этой формуле, значение представляет собой именованный диапазон, который относится к Н2, а также данные , представляет собой именованный диапазон , который относится к B3: E102. Без названных диапазонов, формула может быть записана следующим образом:
Положение первого частичного совпадения
= ПОИСКПОЗ ( «* текст *» ; диапазон; 0 )
Для того, чтобы получить позицию первого частичного совпадения (то есть ячейку, которая содержит текст, который вы ищете), вы можете использовать функцию ПОИСКПОЗ со специальными символами.
В примере формула в Е7:
=ПОИСКПОЗ(«*»&E6&»*»;B5:B10;0)
Функция ПОИСКПОЗ возвращает позицию или «индекс» в первом совпадении на основании значения поиска в диапазоне.
ПОИСКПОЗ поддерживает подстановочное согласование со звездочкой «*» (один или несколько символов) или знаком вопроса «?» (один символ), но только тогда, когда третий аргумент, тип_сопоставления, установлен в ЛОЖЬ или ноль.
Содержание
- Поисковая функция в Excel
- Способ 1: простой поиск
- Способ 2: поиск по указанному интервалу ячеек
- Способ 3: Расширенный поиск
- Вопросы и ответы
В документах Microsoft Excel, которые состоят из большого количества полей, часто требуется найти определенные данные, наименование строки, и т.д. Очень неудобно, когда приходится просматривать огромное количество строк, чтобы найти нужное слово или выражение. Сэкономить время и нервы поможет встроенный поиск Microsoft Excel. Давайте разберемся, как он работает, и как им пользоваться.
Поисковая функция в Excel
Поисковая функция в программе Microsoft Excel предлагает возможность найти нужные текстовые или числовые значения через окно «Найти и заменить». Кроме того, в приложении имеется возможность расширенного поиска данных.
Способ 1: простой поиск
Простой поиск данных в программе Excel позволяет найти все ячейки, в которых содержится введенный в поисковое окно набор символов (буквы, цифры, слова, и т.д.) без учета регистра.
- Находясь во вкладке «Главная», кликаем по кнопке «Найти и выделить», которая расположена на ленте в блоке инструментов «Редактирование». В появившемся меню выбираем пункт «Найти…». Вместо этих действий можно просто набрать на клавиатуре сочетание клавиш Ctrl+F.
- После того, как вы перешли по соответствующим пунктам на ленте, или нажали комбинацию «горячих клавиш», откроется окно «Найти и заменить» во вкладке «Найти». Она нам и нужна. В поле «Найти» вводим слово, символы, или выражения, по которым собираемся производить поиск. Жмем на кнопку «Найти далее», или на кнопку «Найти всё».
- При нажатии на кнопку «Найти далее» мы перемещаемся к первой же ячейке, где содержатся введенные группы символов. Сама ячейка становится активной.
Поиск и выдача результатов производится построчно. Сначала обрабатываются все ячейки первой строки. Если данные отвечающие условию найдены не были, программа начинает искать во второй строке, и так далее, пока не отыщет удовлетворительный результат.
Поисковые символы не обязательно должны быть самостоятельными элементами. Так, если в качестве запроса будет задано выражение «прав», то в выдаче будут представлены все ячейки, которые содержат данный последовательный набор символов даже внутри слова. Например, релевантным запросу в этом случае будет считаться слово «Направо». Если вы зададите в поисковике цифру «1», то в ответ попадут ячейки, которые содержат, например, число «516».
Для того, чтобы перейти к следующему результату, опять нажмите кнопку «Найти далее».
Так можно продолжать до тех, пор, пока отображение результатов не начнется по новому кругу.
- В случае, если при запуске поисковой процедуры вы нажмете на кнопку «Найти все», все результаты выдачи будут представлены в виде списка в нижней части поискового окна. В этом списке находятся информация о содержимом ячеек с данными, удовлетворяющими запросу поиска, указан их адрес расположения, а также лист и книга, к которым они относятся. Для того, чтобы перейти к любому из результатов выдачи, достаточно просто кликнуть по нему левой кнопкой мыши. После этого курсор перейдет на ту ячейку Excel, по записи которой пользователь сделал щелчок.
Способ 2: поиск по указанному интервалу ячеек
Если у вас довольно масштабная таблица, то в таком случае не всегда удобно производить поиск по всему листу, ведь в поисковой выдаче может оказаться огромное количество результатов, которые в конкретном случае не нужны. Существует способ ограничить поисковое пространство только определенным диапазоном ячеек.
- Выделяем область ячеек, в которой хотим произвести поиск.
- Набираем на клавиатуре комбинацию клавиш Ctrl+F, после чего запуститься знакомое нам уже окно «Найти и заменить». Дальнейшие действия точно такие же, что и при предыдущем способе. Единственное отличие будет состоять в том, что поиск выполняется только в указанном интервале ячеек.
Способ 3: Расширенный поиск
Как уже говорилось выше, при обычном поиске в результаты выдачи попадают абсолютно все ячейки, содержащие последовательный набор поисковых символов в любом виде не зависимо от регистра.
К тому же, в выдачу может попасть не только содержимое конкретной ячейки, но и адрес элемента, на который она ссылается. Например, в ячейке E2 содержится формула, которая представляет собой сумму ячеек A4 и C3. Эта сумма равна 10, и именно это число отображается в ячейке E2. Но, если мы зададим в поиске цифру «4», то среди результатов выдачи будет все та же ячейка E2. Как такое могло получиться? Просто в ячейке E2 в качестве формулы содержится адрес на ячейку A4, который как раз включает в себя искомую цифру 4.
Но, как отсечь такие, и другие заведомо неприемлемые результаты выдачи поиска? Именно для этих целей существует расширенный поиск Excel.
- После открытия окна «Найти и заменить» любым вышеописанным способом, жмем на кнопку «Параметры».
- В окне появляется целый ряд дополнительных инструментов для управления поиском. По умолчанию все эти инструменты находятся в состоянии, как при обычном поиске, но при необходимости можно выполнить корректировку.
По умолчанию, функции «Учитывать регистр» и «Ячейки целиком» отключены, но, если мы поставим галочки около соответствующих пунктов, то в таком случае, при формировании результата будет учитываться введенный регистр, и точное совпадение. Если вы введете слово с маленькой буквы, то в поисковую выдачу, ячейки содержащие написание этого слова с большой буквы, как это было бы по умолчанию, уже не попадут. Кроме того, если включена функция «Ячейки целиком», то в выдачу будут добавляться только элементы, содержащие точное наименование. Например, если вы зададите поисковый запрос «Николаев», то ячейки, содержащие текст «Николаев А. Д.», в выдачу уже добавлены не будут.
По умолчанию, поиск производится только на активном листе Excel. Но, если параметр «Искать» вы переведете в позицию «В книге», то поиск будет производиться по всем листам открытого файла.
В параметре «Просматривать» можно изменить направление поиска. По умолчанию, как уже говорилось выше, поиск ведется по порядку построчно. Переставив переключатель в позицию «По столбцам», можно задать порядок формирования результатов выдачи, начиная с первого столбца.
В графе «Область поиска» определяется, среди каких конкретно элементов производится поиск. По умолчанию, это формулы, то есть те данные, которые при клике по ячейке отображаются в строке формул. Это может быть слово, число или ссылка на ячейку. При этом, программа, выполняя поиск, видит только ссылку, а не результат. Об этом эффекте велась речь выше. Для того, чтобы производить поиск именно по результатам, по тем данным, которые отображаются в ячейке, а не в строке формул, нужно переставить переключатель из позиции «Формулы» в позицию «Значения». Кроме того, существует возможность поиска по примечаниям. В этом случае, переключатель переставляем в позицию «Примечания».
Ещё более точно поиск можно задать, нажав на кнопку «Формат».
При этом открывается окно формата ячеек. Тут можно установить формат ячеек, которые будут участвовать в поиске. Можно устанавливать ограничения по числовому формату, по выравниванию, шрифту, границе, заливке и защите, по одному из этих параметров, или комбинируя их вместе.
Если вы хотите использовать формат какой-то конкретной ячейки, то в нижней части окна нажмите на кнопку «Использовать формат этой ячейки…».
После этого, появляется инструмент в виде пипетки. С помощью него можно выделить ту ячейку, формат которой вы собираетесь использовать.
После того, как формат поиска настроен, жмем на кнопку «OK».
Бывают случаи, когда нужно произвести поиск не по конкретному словосочетанию, а найти ячейки, в которых находятся поисковые слова в любом порядке, даже, если их разделяют другие слова и символы. Тогда данные слова нужно выделить с обеих сторон знаком «*». Теперь в поисковой выдаче будут отображены все ячейки, в которых находятся данные слова в любом порядке.
- Как только настройки поиска установлены, следует нажать на кнопку «Найти всё» или «Найти далее», чтобы перейти к поисковой выдаче.
Как видим, программа Excel представляет собой довольно простой, но вместе с тем очень функциональный набор инструментов поиска. Для того, чтобы произвести простейший писк, достаточно вызвать поисковое окно, ввести в него запрос, и нажать на кнопку. Но, в то же время, существует возможность настройки индивидуального поиска с большим количеством различных параметров и дополнительных настроек.
Привет. Наверное чаще всего в Эксель я использую набор формул, призванный по заданному мною тексту находить соответствие в ячейке и отмечать их либо копировать в соседний столбец. Очень удобно использовать для сортировки столбцов данных, когда нужно сделать её быстро без загрузки в Power Query или какой-то дополнительной обработки.
Расскажу подробнее про это и в конце отдам шаблон.
Формула для поиска значения ячейки Эксель
На скрине выше, видно, что в столбец с фильтром попадают только ячейки, содержащие упоминание цены. А в столбец без фильтра, все прочие — это сделано для того, чтобы в дальнейшем удобно было забирать найденные значения и использовать в работе.
Если открыть строку формул, то мы увидим следующее →
Не пугайтесь, всё намного проще, чем кажется. Сейчас всё расскажу.
Центральная формула состоит из следующих значений и будет выглядеть так:
=if(isnumber(find("цены",А3)),А3,"")
- Функция find ищет заданный нами текст “цена” в выбранной ячейке А3. Далее если находит, то она возвращает номер символа с которого начинается совпадение. Если не находит, то далее весь цикл формул не работает и на выходе получаем пустое значение в скобочках “” от функции if;
- Функция isnumber принимает на вход только числа, соответственно если find нашла искомое значение и отдала цифру, то функция срабатывает и продолжает цикл if, если нет, то опять получаем пустое значение в скобочках “” от функции if;
- Функция if если предыдущая функция isnumber срабатывает, возвращает нам значение ячейки A3, если нет, то пустое значение “”.
Таким образом, там где есть упоминание “цена” мы получаем обратно эти ячейки. Для обычного поиска единственного совпадения этой формулы достаточно за глаза, но в нашем примере нужно найти все коммерческие запросы. Именно для этого мы используем перебор разных значений, как на этом скрине.
Это делается с помощью копирования строки. Но, очень важно, при копировании новой строки мы добавляем новую закрывающую скобочку в конец формулы.
Шаблон поиска совпадений по значению в ячейке
Чтобы вам не искать и не копировать формулу, я сделал шаблон для этой формулы. Он лежит в Гугл Таблице с двумя вариантами работы, совсем просто, где нужно ввести искомое значение в ячейку, вставить список слов и всё сработает само.
И второй, о котором писал для перебора нескольких совпадений.
Шаблон лежит тут, пользуйтесь на здоровье. А также следите за новостями в моём канале.
Также по теме ряд прошлых статей: