Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Описание
В этой статье приведены пошаговые инструкции по поиску данных в таблице (или диапазоне ячеек) с помощью различных встроенных функций 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).
Чтобы получить дополнительные сведения о функции СМЕЩ , щелкните следующий номер статьи базы знаний Майкрософт:
Использование функции СМЕЩ
Нужна дополнительная помощь?
Проверка ячейки на наличие в ней текста (без учета регистра)
Смотрите также arr = Range([a1],: А иначе? Если функция сравнивается сЧтобы легко понять, как листе «ДАННЫЕ» в внутри слова, напримерС запасом, но 10, т.к. слово ПРАВСИМВ. Функция ДЛСТРВторой аргумент функции –Во-первых, спасибо заВитушка есть решение проще. Дана таблица. В грамматические ошибки. ДляФорматПримечание: [a100]).Value For i НЕ нашли, то значением строки «C». удалось экспонировать цветом
каждой ячейке последней «собранный» короче Код =ПРОСМОТР(2;1/(ПОИСК(Лист2!B$2:B$99;B3)-1);Лист2!B$2:B$99) «Захар» начинается с «считает» общую длину формат. Где брать формулу: Код =ИНДЕКС(Лист1!$C$1:$C$99;ПОИСКПОЗ(ЛОЖЬ;ЕНД(ПОИСКПОЗ(«*»&Лист1!$A$1:$A$99&»*»;A25;));)): Доброго всем вечера!Анастасия_П первом столбце наименования, нас важно, чтобыи внесите нужныеМы стараемся как
= 1 To что занести вВо всех выше описанных определенные значения с строчкой.
Поиск ячеек, содержащих текст
ManyashaЕвгений8510 десятого символа в
-
текста. Затем отнимается строку формата? Щелкаем У меня
У меня похожая: я в вопросе содержащие одни и
-
эта статья была изменения во всплывающем можно оперативнее обеспечивать 100 If UCase(arr(i, В1! примерах очень легко помощью условного форматированияВОТ файл:Потстановка соответсвующей:
-
: Спасибо AlexM, Вы строке. Где это количество знаков до правой кнопкой мыши возникла проблема, антологичная задача, помогите, плиз, сами наименования упростила, те же слова, вам полезна. Просим
окне вас актуальными справочными 1)) Like UCase(«яблоко»)
-
Валерий аникин применять текстовые функции разберем этапы действий статьи.xlsxsweta212 правы, диапазон на может пригодиться? первого пробела (найденное
-
по ячейке со выше описанным: по написать формулу для а в идеале но записаны по вас уделить паруНайти формат материалами на вашем
Then iCnt2 =: http://scriptcoding.ru/2013/11/10/vba-strokovyje-funkciji/ в условном форматировании в двух словах.Помогите, пожалуйста!!!, Оформите формулу тегами листе2 действительно неФункция ПОИСК определяет положение ПОИСКом). значением. Нажимаем «Формат
-
фрагменту текста найти следующих условий. Если они как в разному. Например: «коньяк секунд и сообщить,
. языке. Эта страница iCnt2 + 1Шведов сергей так как длина Сначала мы извлекаемVlad999 (кнопка 9 позиций, а
знака в текстовойВторая строка содержит имя, ячеек». В открывшемся
Проверка ячейки на наличие в ней любого текста
слово в массиве в тексте столбца файле… Янтарный замок», «Янтарный
Проверка соответствия содержимого ячейки определенному тексту
помогла ли онаКнопка переведена автоматически, поэтому Next i ‘итог: в В1 формулу. строк в исходных
Проверка соответствия части ячейки определенному тексту
часть текста, а: Код =ПРОСМОТР(9^9;ПОИСК(Статья!$A$1:$A$24;Данные!D2);Статья!$A$1:$A$24)fx гораздо больше, а строке. А функция отчество и фамилию. окне выбираем «все и заменить название,
А «Назначение платежа»Казанский замок коньяк 0,5″, вам, с помощью
support.office.com
Проверка ячейки на наличие в ней текста (с учетом регистра)
Параметры ее текст может MsgBox «На листе к регистру не данных одинаковая. Но потом сравниваем егоНаташа Демчук) Ваш вариант решает ПСТР возвращает текстовые Для имени используем форматы». Копируем нужный на то, которое листа «отчет» содержится: Код =ЕСЛИ(ЕОШ(ПОИСК(«казачок»;A2));ЕСЛИ(ЕОШ(ПОИСК(«янтарный замок»;A2));»?»;»10 «коньяк Янтарный замок кнопок внизу страницы.служит для задания содержать неточности и » & iCnt1 чувствительна что, если у
с требуемым значением.: Видела похожее здесь,InExSu задачу когда список значения (см. пример такую же формулу: в строке «Тип». требуется по справочнику. слово из столбца янтарный замок»);»11 казачок») трехлетний 0,5″, «водка
Сравнение ячейки с другой ячейкой
Для удобства также более подробных условий грамматические ошибки. Для
& » ябл.»=ЕСЛИ (ЕСЛИОШИБКА (ПОИСК нас в исходных Но как из
Сравнение значения со значениями из списка
но не получилось: Привет! на листе2 пополняется
выше). Либо можноФормула для извлечения фамилии Вставляем скопированное значение Мне нужно сделать А листа «списки», В примере работает. казачок», «казачок водка приводим ссылку на поиска. Например, можно найти нас важно, чтобы & vbLf & («Анонс»;A1);ЕСЛИОШИБКА (ПОИСК («икона»;A1);ЕСЛИОШИБКА данных разного типа ячейки извлечь часть применить формулы(((вариант решения ждёт автоматически. Спасибо ещё заменить найденный текст несколько иная: Это в формулу.
Проверка соответствия части ячейки определенному тексту
эту формулу, через то в столбцеВот так логически
0,7л». Во второй оригинал (на английском все ячейки, содержащие
эта статья была «В массиве « (ПОИСК («суббота»;A1);-1)))>0;A1;»»)
индикаторы с разной
-
текста в Excel?Поиск фрагментов текста
-
выполнения требования модератора раз! посредством функции ЗАМЕНИТЬ.
support.office.com
Поиск фрагментов текста в ячейке
пять знаков справа.Приведем еще пример, где
ЕСЛИОШИБКА. Тоже есть В «Филиал» на проще «достраивать» формулу столбец нужно ввести языке) . данных определенного типа, вам полезна. Просим & iCnt2 &Успехов! длинной символов, а Обратим внимание на в ячейкеsweta212sweta212Скачать пример функции для Вложенные функции ПОИСК может быть полезна пример. листе «отчет» должно для других наименований: текст «10 янтарныйПредположим, что требуется найти такого как формулы. вас уделить пару » ябл.» EndАлексей матевосов (alexm) нам все еще функцию =ПСТР() вСПАСИБО!!!!РАБОТАЕТ!!! БОЛЬШОЕ СПАСИБО!!!: InExSu, спасибо, что: Есть товарные категории работы с текстом
ищут второй и данная функция. Добавим
НО! Копирую формулу встать соответствие из Код =ЕСЛИ(ЕЧИСЛО(ПОИСК(«казачок»;A2));»11 казачок»;ЕСЛИ(ЕЧИСЛО(ПОИСК(«янтарный замок», если ячейка написанный прописными буквами
Для поиска на текущем секунд и сообщить, Sub: Вариант, работающий в нужно выделять 2006-й формуле правила. Данная
УРА!
ответили. К наименованию 3000 ячеек, например,
в Excel третий пробелы в нули в начале значение принимает верное. столбца В листа
замок»;A2));»10 янтарный замок»;»?»)) содержит текст «янтарный текст, начинающийся со листе или во помогла ли она
Tanya15 любой версии Excel год или группу функция возвращает частьДобавлено через 19 минут товара необходимо подтянуть «скобы, скрепки» иЧитайте так же: как
строке. ПОИСК(» «;A3;1) числа. Если ввести Ввожу руками, результат «списки». Для примераHugo121
замок» и если стандартного префикса, принятого всей книге можно
вам, с помощью: Мой пример=ЕСЛИ (ЕЧИСЛО (ПОИСК «C». строки, взятой сА главное так
категорию товара. Например, перечень товара Доп.заказ перевести число и находит первый пробел
вручную, Excel их не корректный… Что написала что должно: В вопросе Вы ячейка содержит текст
в организации, например выбрать в поле кнопок внизу страницы.Sub Кнопка2_Щелчок() («анонс»;A1))+ЕЧИСЛО (ПОИСК («икона»;A1))+ЕЧИСЛОВ решении данной задачи каждой ячейки столбца быстро ответили, просто наименование товара «Доп.
Скобы для степлера***, сумму прописью. слева (перед отчеством). удалит. Поэтому введем
делаю не так получиться. Выбирать фильтром как раз усложнили «казачок», то ввести
ИН_ или ТУ-.Искать Для удобства также
Dim i As (ПОИСК («суббота»;A1));A1;»») нам поможет дополнительная A, что указано невероятное чудо!!! Спасибо!
заказ Сироп ****»,
Доп. заказ СкобаСинтаксис функции ПОИСК: К найденному результату формулу: не понятно. Когда,
очень долго( — то «янтарный текст «11 казачок». Существует несколько способоввариант приводим ссылку на Single, j AsPS. Прошу прощение
текстовая функция в в первом аргументе. Будьте здоровы! а категория «Соусы, №24 (17000 ячеек)«искомый текст» — что добавляем единицу (+1).Если нужно вернуть прежние
ввожу «»,слежу, чтобыВитушка замок», то «замок Т.е. Если ячейка проверки ячейки наЛист оригинал (на английском
Single, s As за повтор. Не
формуле =НАЙТИ(). В Ссылка в первом
У нас имеется данные кетчупы, сиропы, томатная необходимо к перечню нужно найти; Получаем ту позицию, числовые значения (без стояла английская раскладка: пример прилагаю янтарный», поэтому я А2 содержи текст наличие в нейили языке) . Single заметил формулу Александра первом случаи формула аргументе должна быть для анализа производимой
паста» — то товара подтянуть категорию,
«просматриваемый текст» — где с которой будем нулей), то используем на клавиатуре.Витушка и предложил тот
«янтарный замок», то текста с учетомКнигаПредположим, что вы хотитеs = 0 в комментариях. Правда будет выглядеть так: относительной, так как продукции. Нам нужно
есть и сироп выбрав лишь часть искать; искать второй пробел. оператор «—»:Очень хочется понять: Формула
готовый макрос. И в ячейку В2
регистра.. убедиться, что столбецFor i = моя чуть короче.Для удобного выделения идентификаторов формула применяется к автоматически выделить все не первое слово, слова из категории«начальная позиция» — сЧасть формулы – ПОИСК(«Обратите внимание, что значения как работает этаКазанский формулу такую длинную. ввести текст «10Для выполнения этой задачиНажмите кнопку содержит текст, не 2 To 6 :-) с разной длинной каждой ячейке столбца изделия, которые были и окончание слова
за минусом окончания какой позиции начинать «;A3;ПОИСК(» «;A3;1)+1) – теперь отображаются в формула, в впрекрасно работает иНо если порядок янтарный замок» и используется функция СОВПАДНайти все номера. Или perhapsyouFor j =Вот еще формула текстовой строки товаров
A. Во втором выпущены в 2006 другое, что мешаетChe79 искать (по умолчанию находит второй пробел. числовом формате. целом, и где для Вашего примера
слов всегда правильный, если ячейка А2 .или необходимо найти все 1 To 6ЕСЛИ (СЧЁТЕСЛИ (A1;»*анонс*»)+СЧЁТЕСЛИ из группы «C»
CyberForum.ru
Функции для работы с текстом в Excel
аргументе функции указывается году. К сожалению, поиску. Есть возможность: – 1). Это будет конечная
Примеры функции ТЕКСТ в Excel
допускаешь ошибку…Формула не Код =ЕСЛИОШИБКА(ИНДЕКС(списки!B$1:B$6;ПОИСКПОЗ(ЛОЖЬ;ЕНД(ПОИСКПОЗ(«*»&списки!A$1:A$6&»*»;A2;));));»-«) то конечно всё содержи текст «казачок»,Примечание:Найти далее заказы, которые соответствуютIf Cells(i, j)
(A1;»*икона*»)+СЧЁТЕСЛИ (A1;»*суббота*»);A1;»») используем такую формулу: номер символа исходного в таблице недостает как то этоsweta212Если нужно учитывать регистр, позиция отчества.Отдельные текстовые функции и выдает ошибку, она
Витушка проще. то в ячейку Функция СОВПАД учитывает регистр,
. определенным Продавец. Если = «яблоко» Then
Tanya15Функция =НАЙТИ() выполняет поиск текста, с которого еще одного столбца свести? Использовала формулу, в описании у используется функция НАЙТИ.Далее из общей длины
их комбинации позволяют возвращает 0, если
: Я понимаю, чтоСтоп, кажется мне В2 ввести текст но не учитываетНайти все у вас нетs = s: Здравствуйте, подскажите, пожалуйста, фрагмента текста в должен начаться отрезок содержащего значения года=ПРОСМОТР(2;1/ПОИСК(классификатор!$H$2:$H$2617;D6);классификатор!$H$2:$H$2617)
Вас скобы, скрепки,Евгений8510 строки отнимается количество распределить слова из нет замены. я дурак. Мучаюсь очки пора доставать… «11 казачок».
различия в форматировании.списки каждого экземпляра проблемой верхний или + Cells(i, j
как правильно прописать ячейке Excel. Потом строки. В третьем
производства каждого изделия.
Функция разделения текста в Excel
нашла только 3000 степлеры, а во: Уважаемые форумчане, подскажите знаков с начала одной ячейки в
- Для удобства работы с уже час. Но Там небыло вариантаБуду благодарна за
- Для выполнения этой задачи элемента, который необходимо нижний регистр текста, + 1)
- код VBA. возвращает номер символа, аргументе указывается количество Но видно, что товаров из 17000, вложении чай с пожалуйста как решить
строки до второго отдельные ячейки: текстом в Excel мне не ввести «замок янтарный»?
помощь. используются функции СОВПАД найти, и позволяет существует несколько способов
End IfНеобходимо в диапазоне в котором был символов, которые нужно в фрагменте идентификатора в основном при сиропом и кетчупом задачу с текстом. пробела. Результат –ЛЕВСИМВ (текст; кол-во знаков) существуют текстовые функции. формулу массива(((Если не
Анастасия_П
IvanOK и или . сделать активной ячейки, проверки, если ячейкаNext j текстовых ячеек найти найдет текст, который взять после определенного (ID) изделия указывается
полном совпадении слов, и названия листовНа листе1, есть число символов справа,
– отображает заданное Они облегчают обработку сложно, можно вставить: Ураааа!!! Работает!!! Спасибо-преспасибо!!!:Примечание: выбрав нужное вхождение. содержит текст.Cells(i, 7) = ячейки которые содержат задан в первом (во втором аргументе) год производства. В но получила обратный
«категории» и «наименование». столбец «В» в которые нужно вернуть. число знаков с сразу сотен строк.
ее в файл? Всем всем всемАнастасия_П При вводе формулы в Можно сортировать результатыДля поиска текста можно s
слово, например «яблоко». аргументе. Во втором символа исходного текста.
Функция объединения текста в Excel
таком случае нам эффект — категория Куда что притягивать? котором текст, изФормула «для отчества» строится
начала ячейки; Рассмотрим некоторые из
А?Формула не дает, ближе к делу примере должны бытьНайти также использовать фильтр.s = 0 Т.е. есть ячейки аргументе указываем где В результате функция нужно выполнить поиск «Бра» подтянулась ко Нарисуйте желаемый результат него нужно извлечь
по тем жеПРАВСИМВ (текст; кол-во знаков)
них на примерах.
OlesyaSh вносить много аргументов…Когда давайте сюда пример формула массива. Послевсе, щелкнув заголовок.
Функция ПОИСК текста в Excel
Дополнительные сведения см.Next i с текстом «зеленое искать текст. А
=ПСТР() возвращает только по части текста всем товарам где вручную в нескольких часть текста в принципам:
– возвращает заданноеПреобразует числа в текст.: копируете формулу, вставляете «достраиваю» формулу, такHugo121 ввода формулы. НажмитеПримечание: в статье Фильтрация
End Sub яблоко», «красное яблоко», третий аргумент –
часть текста длинной в Excel. А встречались данные буквы
ячейках.
- столбец «С» ,Для объединения значений из
- количество знаков с Синтаксис: значение (числовое
- куда надо и и пишет, что: Можете переработать кучу клавишу F2 и
Чтобы прекратить процесс поиска, данных.
exceltable.com
Поиск части текста в ячейке
итогояблоко1арбуз25яблоко2526апельсин2апельсин26арбуз140зеленое яблоко 3яблоко24вишня8624яблоко «яблоко» и тд, это номер позиции 4 символа взятого
потом мы будем внутри слова, напримерbmv98rus а список нужного нескольких ячеек в конца ячейки; или ссылка на сразу же - слишком много аргументов… готовых решений из
нажмите клавиши CTRL нажмите клавишу ESC.Выполните следующие действия, чтобы арбуз 4апельсин28зеленое яблоко920красное
необходимо, что бы с какого символа
начиная с 5-ой использовать условное форматирование «собранный»: текста, находится на одну строку используется
ПОИСК (искомый текст; диапазон ячейку с формулой,
держите зажатыми CtrlДобавлено через 15 минут темы Поиск и + SHIFT +
Для выполнения этой задачи найти ячейки, содержащие яблоко5красное яблоко33апельсин320 он нашел всех вести поиск в буквы в каждой
с текстовыми функциямиPelenaChe79 листе2. Заранее благодарен оператор амперсанд (&)
для поиска; начальная дающей в результате
и Shift, нажимаетеФормула не дает выделение в таблице ВВОД. Microsoft Excel используется функция определенный текст.В итоге считает их. исходном тексте. Третий ячейки из столбца в формуле. Благодаря
CyberForum.ru
Поиск в диапазоне ячеек части текста из другого диапазона (Формулы/Formulas)
: На форуме есть, так там даже за помощь. или функция СЦЕПИТЬ. позиция) – показывает число); формат (для Enter. вносить много аргументов…Когда по нескольким параметрам вставляет фигурные скобкиЕТЕКСТВыделите диапазон ячеек, среди только «яблоко», а
V аргумент позволяет нам А. Это «2005» этому молниеносно реализуем тема про нечеткий помечено Offtop :-)snipeНапример, значения расположены в позицию первого появления отображения числа впотом протягиваете ее «достраиваю» формулу, такРекомендую моё в начале и
. которых требуется осуществить зеленые и красные: и что дальше смещаться по строке.
или «2006». После решение задачи. поиск Простая метрикаsweta212: разных столбцах (ячейках): искомого знака или виде текста). вниз. и пишет, чтоАнастасия_П конце формулу. ЕслиДля возвращения результатов для поиск. не учитывает. Необходимо, с этим делать Например, если в функции стоит операторПример таблицы производимой продукции:
сходства текстовых строк: bmv98rus, Che79, спасибо,Евгений8510Ставим курсор в ячейку, строки при просмотреСамая полезная возможность функциик тому же слишком много аргументов…: вот вложение формула не будет условия, которое можно
Чтобы выполнить поиск по чтобы считал по будете? идентификаторе 2 раза сравнения к значениюЧтобы на основе идентификатораПосмотрите результат с
что ответили. К,
где будут находиться слева направо
ТЕКСТ – форматирование Вам ответили наКазанскийHugo121 введена как формула указать с помощью всему листу, щелкните всем ячейкам вкак вариант таблицу используется символ «C». строки «2006». Если выделить изделия 2006-го одной из функций. наименованию товара необходимонаверное не тот объединенные три значения.При разделении текста в числовых данных для
другом форуме))))Урррааааа! Получилось.: Составьте на другом: Хотя для таких массива, ошибка #VALUE! функции любую ячейку. которых содержится слово загнать в массив В таком случае ячейка содержит такую года выпуска выполним
100%-го результата, конечно, подтянуть категорию товара. файлик прикрепили Вводим равно. Выбираем строке учитывается положение
объединения с текстовыми Просто чудеса. Но
листе таблицу соответствия 2-х условий можно возвращается. Дополнительные сведения
ЕслиНа вкладке «яблоко» и циклом перебирать
excelworld.ru
Поиск фрагментов текста в ячейке
третий аргумент пользователь часть текста значит шаги следующих действий: не будет, но Например, наименование товараЕвгений8510 первую ячейку с каждого знака. Пробелы данными. Без использования
все не так фрагмент-номер в ст. формулами сделать - о формулах массива.ГлавнаяКазанский . задает в зависимости ей будет присвоенВыделите диапазон ячеек A2:A10
как вариант… «Доп. заказ Сироп
: Да к сожалению
текстом и нажимаем показывают начало или
функции Excel «не просто, задача на А и В, вот начало:
читайте в статьеДля выполнения этой задачи
в группе: Tanya15, If Cells(i,
Пытливый
от ситуации. новый формат. и выберите инструмент:В формуле можно
CyberForum.ru
Условное форматирование по части текста в ячейке Excel
****», а категория не тот… приношу на клавиатуре &. конец искомого имени. понимает», как показывать самом деле сложнее. в ст. С=IF((FIND(«янтарный»,LOWER(A2),1)>0)+(FIND(«замок»,LOWER(A2),1)>0)=2,»10 янтарный замок»,»»)Сюда рекомендации и примеры используются функцииРедактирование j) like «*яблоко*»: Варианты: Воспользоваться методомТак как функция возвращаетАналогичным способом можно использовать «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило». поиграться с последним «Соусы, кетчупы, сиропы, свои извинения уважаемые Затем – знакРаспределим с помощью функций числа, и преобразует Боялась что не «протяните» формулу, которая навесить обработку ошибки
формул массива.
Еслинажмите кнопку Then Find для диапазона.
- нужное число мы и другие текстовыеВыберите: «Использовать формулу для
- аргументом — % томатная паста» -
- коллеги. Прикрепляю нужный пробела, заключенный в имя, фамилию и их в базовый
- разберусь и сначала склеит эти данные. и ещё вложитьДля выполнения этой задачи,Найти и выделить
Tanya15 Вопрос — что
прекрасно используем ее функции в условном определения форматируемых ячеек». совпадения
то есть и
Функция ПСТР и ее пример в использования условном форматировании
файл. кавычки (“ “). отчество в разные формат. проблему озвучила попроще.В основной таблице аналогичный IF для используются функции Если,Поиски нажмите кнопку: Все так просто дальше с ними в качестве аргументов форматировании. Например, сЧтобы выполнить поиск частиНаташа Демчук сироп не первоеAleksSid Снова — &. столбцы.Покажем на примере. Допустим, А Может быть используйте такую формулу казачков. Поиски ЕЧИСЛО .иНайтиСпасибо! делать надо? для других функций помощью функции =ПРАВСИМВ() текста в ячейке: Помогите, пожалуйста, прописать слово, и окончание: Вариант. Код =ПРОСМОТР(2;1/ПОИСК(Лист2!$B$2:$B$9;B3);Лист2!$B$2:$B$9) И так последовательноВ первой строке есть нужно объединить текст получится вообще одной Код =ИНДЕКС(Лист1!$C$1:$C$99;ПОИСКПОЗ(ЛОЖЬ;ЕНД(ПОИСКПОЗ(«*»&Лист1!$A$1:$A$99&»*»;A2;));)) ЭтоНу или сПримечание:ЕЧИСЛО.Nordheimupd V, опередил (ПСТР и ПРАВСИМВ). мы можем экспонировать Excel, введите формулу: формулу. Видела похожие слова другое, чтоЕвгений8510 соединяем ячейки с
только имя и в строках и формулой обойтись. Смысл формула требует ввода допстолбцами сделать, чтоб В функции НАЙТИ учитывается.В поле: под ваш пример. с вопросом!
Помогите составить формулу: цветом определенную группу =ПСТР(A2;5;4)=»2006″ обращения к Вам мешает поиску. Есть: Огромное спасибо AleksSi, текстом и пробелы. фамилия, разделенные пробелом. числовые значения: в том, что как формула массива, голову меньше ломать
регистр букв.Примечание:НайтиSub test() DimNordheimЕсли среди текста товаров из партииНажмите на кнопку «Формат», за помощью, но возможность как то это то чтоПолучаем в одной ячейке Формула для извлеченияИспользование амперсанда без функции если в столбце т.е. нажатием Ctrl+Shift+Enter,
— в соседнийНа приведенном выше рисунке Функциявведите текст — i&, iCnt1&, iCnt2&,: Sub test() Dim
в ячейке A1 C. Для этого чтобы задать красный что-то у меня это свести? Использовала
нужно, красивое решение. объединенные значения: имени: =ЛЕВСИМВ(A2;ПОИСК(» «;A2;1)). ТЕКСТ дает «неадекватный» А листа «отчет» и отображается в столбец вытянуть казачков, формуле используются аргументы,поиска или номера —, arr(), ikey ‘1 i&, iCnt1&, iCnt2&, есть текст «Анонс» нужно использовать формулу: цвет заливки для не выходит сделать формулуAlexMИспользование функции СЦЕПИТЬ: Для определения второго результат: не нашлось фрагмента, фигурных скобках. затем в третий
указанные ниже.не учитывается регистр. вам нужно найти. вариант For Each arr() ‘1 вариант или «икона» или
exceltable.com
Поиск текста в ячейке excel
Здесь все просто функция
ячейки. И нажмите самостоятельно. Очень Надо=ПРОСМОТР(2;1/ПОИСК(классификатор!$H$2:$H$2617;D6);классификатор!$H$2:$H$2617): Если нужен диапазонС помощью кавычек в аргумента функции ЛЕВСИМВExcel вернул порядковый номер
соответствующего столбцу А
В таком виде собрать то, чтоФормула для поиска текста
Примечание:
Или выберите из ikey In ActiveSheet.UsedRange поиск на листе «суббота», то содержимое позволяет выбрать часть
ОК на всех Спасибо.
нашла только 3000 с запасом Код формуле можно добавить – количества знаков
для даты и листа «списки», просматривается она рассчитана на
без ошибок.
искомая строкаМы стараемся как раскрывающегося списка
If UCase(ikey.Value) Like For i = ячейки A1 скопировать
текста из ячейки открытых окнах.Суть задачи: надо товаров из 17000, =ПРОСМОТР(2;1/ПОИСК(Лист2!B$2:B$99;B3)/(Лист2!B$2:B$99<>»»);Лист2!B$2:B$99) Можно добавлять в конечное выражение
– используется функция
общий формат вместо столбец В, если
Поиск ячеек, содержащих определенное слова (VBA)
таблицу номеров длинойКстати, пример не: вы хотите проверить. можно оперативнее обеспечивать
Найти UCase(«*яблоко*») Then iCnt1 1 To 100 в ячейку B1 Excel, начиная сЭкспонированные цветом изделия 2006-го чтобы в столбец в основном при список на листе2, любой знак или ПОИСК. Она находит
денежного. Чтобы избежать не находится и до 99 записей. соответствует тексту вопроса
Ячейка вас актуальными справочнымипоследнего поиска. = ikey(1, 2)
If UCase(Cells(i, 1).Value)Пример строки правой стороны исходного года выпуска: Е на листе полном совпадении слов,
не меняя формулу. текст.
пробел в ячейке подобного результата, применяется в нем, то При необходимости поменяйте — пример проще.: ячейку, содержащую текст, материалами на вашемПримечание: + iCnt1 Next Like UCase(«яблоко») Thenmovie 0:00:35.00 Z:1-Анонс текста. Количество необходимыхДалее разберем принцип действия «ДАННЫЕ» попала соответствующая но получила обратныйФормулу можно поместитьФункция ПОИСК возвращает начальную А2, начиная слева. функция ТЕКСТ. Она столбец С. Если 99 на другое Я делал по который требуется проверить. языке. Эта страница В условиях поиска можно ikey MsgBox «На iCnt1 = iCnt1 0,35 Икона стиля символов указано во
формулы и ее статья расходов из
эффект — категория
в функцию ЕСЛИОШИБКА(), позицию искомого текстаФормула для извлечения фамилии: форматирует значения по
поможете, будет очень
число. вопросу
Анастасия_П переведена автоматически, поэтому
использовать подстановочные знаки. листе » &
+ 1 Next (Воскресенье 14.00).mp4 втором аргументе функции
модификации схожими текстовыми
листа «СТАТЬЯ». Соответствующая
«Бра» подтянулась ко на случай, если
(без учета регистра).
С помощью функции ПОИСК
заданию пользователя.
здорово!! Файл приложилаДобрыйАнастасия_ПВообще я не
: Добрый день! ее текст можетЧтобы задать формат для iCnt1 & « i ‘2 вариантСпасибо всем откинувшимся! ПРАВСИМВ. После чего функциями.
статья прописана в всем товарам где поиск не дал Например:
Excel определяет количествоФормула «для даты» теперь день!
: Все работает, благодарю формулист — наверняка
Помогите решить задачу. содержать неточности и поиска, нажмите кнопку ябл.» End Sub поиск в массивеПолосатый жираф алик все что возвращает столбце D на встречались данные буквы результата.Функция ПОИСК вернула позицию знаков для функции
planetaexcel.ru
выглядит так:
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
- Способ 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 представляет собой довольно простой, но вместе с тем очень функциональный набор инструментов поиска. Для того, чтобы произвести простейший писк, достаточно вызвать поисковое окно, ввести в него запрос, и нажать на кнопку. Но, в то же время, существует возможность настройки индивидуального поиска с большим количеством различных параметров и дополнительных настроек.
Хитрости »
4 Январь 2016 119587 просмотров
Найти в ячейке любое слово из списка
Предположим, вы получаете от поставщика/заказчика/клиента заполненную таблицу с перечнем продукции:
и эту таблицу необходимо сравнить с артикулами/кодами товара в имеющемся у вас каталоге продукции:
Как видно — в нашем каталоге только артикулы без наименований. У заказчика же помимо артикулов еще и название товара, т.е. много лишнего. И вам надо понять какие товары присутствуют в вашем каталоге, а какие нет:
Стандартных формул в Excel для подобного поиска и сравнения нет. Конечно, можно попробовать применить ВПР с подстановочными символами сначала к одной таблице, а затем к другой. Но если подобную операцию необходимо проделывать раз за разом, то прописывать по несколько формул к каждой таблице прямо скажем — не комильфо.
Поэтому я и решил сегодня продемонстрировать формулу, которая без всяких доп. манипуляций поможет такое сравнение сделать. Чтобы разобраться самостоятельно рекомендую скачать файл:
Скачать файл:
Tips_All_AnyoneOfArray.xls (49,5 KiB, 25 670 скачиваний)
На листе «Заказ» в этом файле таблица, полученная от заказчика, а на листе «Каталог» наши артикулы.
Сама формула на примере файла будет выглядеть так:
=ПРОСМОТР(2;1/ПОИСК(Каталог!$A$2:$A$11;A2);Каталог!$A$2:$A$11)
=LOOKUP(2,1/SEARCH(Каталог!$A$2:$A$11,A2),Каталог!$A$2:$A$11)
эта формула вернет название артикула, если в тексте есть хоть один артикул из каталога и
#Н/Д(#N/A)
если артикул не найден в каталоге.
Прежде чем облагородить эту формулу всякими дополнениями(вроде виде убирания ненужных
#Н/Д(#N/A)
) давайте разберемся как она работает.
Кратко о принципе работы функция
ПРОСМОТР(LOOKUP)
: она берет значение, заданное первым аргументом и ищет его в массиве(диапазоне) из второго аргумента. Как только находит — запоминает его позицию(строку, если угодно) и в итоге возвращает значение, расположенное в этой же позиции в массиве третьего аргумента.
Но у функции есть пара особенностей:
- Она ищет не обязательно именно точное совпадение с искомым, а максимально приближенное к нему. Если точнее — равное или большее искомому.
- Функция ПРОСМОТР(LOOKUP) старается преобразовать непосредственно в массив любое выражение, записанное вторым аргументом.
Этими особенностями мы и будем пользоваться.
Как уже упомянул выше — в качестве диапазона для поиска значения обычно приводится массив ячеек, но т.к. функция ПРОСМОТР(LOOKUP) старается преобразовать непосредственно в массив любое выражение — она вычисляет данное ей выражение 1/ПОИСК(Каталог!$A$2:$A$11;A2), работая в итоге с результатами этого вычисления.
Само же выражение работает следующим образом: ПОИСК(Каталог!$A$2:$A$11;A2) ищет поочередно каждое значение из списка Каталога в ячейке A2(в наименовании артикула из таблицы Заказчика). Если значение найдено, то возвращается номер позиции первого символа найденного значения(т.е. какое-то число). Если значение не найдено — возвращается значение ошибки #ЗНАЧ!(#VALUE!). Т.е. получается следующий массив: {55:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!}
По идее, после того, как функция ПРОСМОТР(LOOKUP) вычислит это выражение, она будет последовательно просматривать результаты функции ПОИСК(SEARCH) в поисках заданного нами искомого значения, пока не найдет значение максимально близкое к искомому(оптимально равное или чуть больше него). Но т.к. функция ПОИСК(SEARCH) может вернуть неизвестно какие по величине значения, мы, чтобы не гадать и не думать над тем, какое число задать для поиска, сначала единицу делим на выражение ПОИСК(Каталог!$A$2:$A$11;A2), чтобы получить массив вида:{0,0181818181818182:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!}
А в качестве искомого значения мы подсовываем функции ПРОСМОТР(LOOKUP) число 2 — т.е. заведомо большее число, чем может вообще встретиться в массиве(т.к. единица, поделенная на любое число будет меньше двух), чем заставляем её найти последнее подходящее совпадение из каталога(т.е. последнее не ошибочное значение). После этого функция ПРОСМОТР(LOOKUP) запомнит эту позицию и вернет значение из массива Каталог!$A$2:$A$11(третий аргумент), записанное в этом массиве для этой позиции.
Вы можете просмотреть этапы вычисления функции самостоятельно для каждой ячейки, я здесь просто приведу этапы чуть в расширенном для понимания виде:
- =ПРОСМОТР(2;1/ПОИСК(Каталог!$A$2:$A$11;A2);Каталог!$A$2:$A$11)
- =ПРОСМОТР(2;
1/{55:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!};
Каталог!$A$2:$A$11) - =ПРОСМОТР(2;{0,0181818181818182:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!:#ЗНАЧ!};Каталог!$A$2:$A$11)
- =ПРОСМОТР(2;
1;
{«FM2-3320″:»CV455689″:»Q5949X»:»CE321A»:»CE322A»:»CE323A»:»00064073″:»CX292708″:»CX292709″:»CX292710″}) - =»FM2-3320″
Теперь немного облагородим функцию и сделаем еще пару реализаций
Реализация 1:
Вместо артикулов и #Н/Д(#N/A) выведем для найденных позиций «Есть», а для отсутствующих «Не найден в каталоге»:
=ЕСЛИ(ЕНД(ПРОСМОТР(2;1/ПОИСК(Каталог!$A$2:$A$11;A2)));»Не найден в каталоге»;»Есть»)
=IF(ISNA(LOOKUP(2,1/SEARCH(Каталог!$A$2:$A$11,A2))),»Не найден в каталоге»,»Есть»)
работа функции проста — с ПРОСМОТР(LOOKUP) разобрались, поэтому остались только ЕНД и ЕСЛИ.
ЕНД(ISNA) проверяет вложенное в неё выражение на предмет ошибки #Н/Д(#N/A). Если ошибка есть — ЕНД возвращает ИСТИНА(TRUE), а если ошибки нет — ЛОЖЬ(FALSE).
ЕСЛИ(IF) проверяет выражение из первого аргумента на выполнение. Если выражение выполняется(т.е. оно равно ИСТИНА(TRUE)), то функция запишет значение из второго аргумента(«Не найден в каталоге»). А если не выполняется(ЛОЖЬ(FALSE)) — то значение из третьего(«Есть»).
Т.е. все вместе получается: если наша основная функция возвращает значение ошибки #Н/Д(#N/A), то мы записываем в ячейку «Не найден в каталоге», в противном случае — «Есть».
Реализация 2:
Вместо #Н/Д выведем «Не найден в каталоге», но при этом если артикулы найдены — выведем названия этих артикулов:
=ЕСЛИОШИБКА(ПРОСМОТР(2;1/ПОИСК(Каталог!$A$2:$A$11;A2);Каталог!$A$2:$A$11);»Нет в каталоге»)
=IFERROR(LOOKUP(2,1/SEARCH(Каталог!$A$2:$A$11,A2),Каталог!$A$2:$A$11),»Нет в каталоге»)
Про функция ЕСЛИОШИБКА(IFERROR) я подробно рассказывал в этой статье: Как в ячейке с формулой вместо ошибки показать 0.
Если вкратце, то функция проверяет выражение, записанное первым аргументом(наша основная функция). Если в итоге получаем любую ошибку, то ЕСЛИОШИБКА запишет значение из второго аргумента(в нашем случае это текст «Не найден в каталоге»). Если же выражение(проверяемая функция) не возвращает ошибку, то функция ЕСЛИОШИБКА запишет именно то значение, которое было получено проверяемой функцией(в нашем случае это будет наименование артикула).
Реализация 3
Надо не просто определить какому артикулу соответствует, но и вывести цену для наименования по этому артикулу(сами цены должны быть расположены в столбце B листа Каталог):
=ЕСЛИОШИБКА(ПРОСМОТР(2;1/ПОИСК(Каталог!$A$2:$A$11;A2);Каталог!$B$2:$B$11);»»)
=IFERROR(LOOKUP(2,1/SEARCH(Каталог!$A$2:$A$11,A2),Каталог!$B$2:$B$11),»»)
Пара важных замечаний:
- данные на листе с артикулами не должны содержать пустых ячеек. Иначе с большой долей вероятности формула будет возвращать значение именно пустой ячейки, а не то, которое подходит под условия поиска
- формула осуществляет поиск таким образом, что ищется любое совпадение. Например, в качестве артикула записана цифра 1, а в строке наименований может встречаться помимо целой 1 еще и 123, 651123, FG1412NM и т.п. Для всех этих наименований может быть подобран артикул 1, т.к. он содержится в каждом наименовании. Как правило это может произойти, если артикул 1 расположен в конце списка
Поэтому желательно перед использованием формулы отсортировать список по возрастанию(от меньшего к большему, от А до Я).
В приложенном в начале статьи примере вы найдете все разобранные варианты.
Если же вам понадобится выводить все наименования, то можно воспользоваться функцией СОДЕРЖИТ_ОДНО_ИЗ из моей надстройки MulTEx.
Так же см.:
Сравнение текста по части предложения
Что такое формула массива
Как найти значение в другой таблице или сила ВПР
ВПР с поиском по нескольким листам
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика