Функция поиск возвращает excel

ПОИСК, ПОИСКБ (функции ПОИСК, ПОИСКБ)

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше

В этой статье описаны синтаксис формулы и использование функций ПОИСК и ПОИСКБ в Microsoft Excel.

Описание

Функции ПОИСК И ПОИСКБ находят одну текстовую строку в другой и возвращают начальную позицию первой текстовой строки (считая от первого символа второй текстовой строки). Например, чтобы найти позицию буквы «n» в слове «printer», можно использовать следующую функцию:

=ПОИСК(«н»;»принтер»)

Эта функция возвращает 4, так как «н» является четвертым символом в слове «принтер».

Можно также находить слова в других словах. Например, функция

=ПОИСК(«base»;»database»)

возвращает 5, так как слово «base» начинается с пятого символа слова «database». Можно использовать функции ПОИСК и ПОИСКБ для определения положения символа или текстовой строки в другой текстовой строке, а затем вернуть текст с помощью функций ПСТР и ПСТРБ или заменить его с помощью функций ЗАМЕНИТЬ и ЗАМЕНИТЬБ. Эти функции показаны в примере 1 данной статьи.

Важно: 

  • Эти функции могут быть доступны не на всех языках.

  • Функция ПОИСКБ отсчитывает по два байта на каждый символ, только если языком по умолчанию является язык с поддержкой БДЦС. В противном случае функция ПОИСКБ работает так же, как функция ПОИСК, и отсчитывает по одному байту на каждый символ.

К языкам, поддерживающим БДЦС, относятся японский, китайский (упрощенное письмо), китайский (традиционное письмо) и корейский.

Синтаксис

ПОИСК(искомый_текст;просматриваемый_текст;[начальная_позиция])

ПОИСКБ(искомый_текст;просматриваемый_текст;[начальная_позиция])

Аргументы функций ПОИСК и ПОИСКБ описаны ниже.

  • Искомый_текст    Обязательный. Текст, который требуется найти.

  • Просматриваемый_текст    Обязательный. Текст, в котором нужно найти значение аргумента искомый_текст.

  • Начальная_позиция    Необязательный. Номер знака в аргументе просматриваемый_текст, с которого следует начать поиск.

Замечание

  • Функции ПОИСК и ПОИСКБ не учитывают регистр. Если требуется учитывать регистр, используйте функции НАЙТИ и НАЙТИБ.

  • В аргументе искомый_текст можно использовать подстановочные знаки: вопросительный знак (?) и звездочку (*). Вопросительный знак соответствует любому знаку, звездочка — любой последовательности знаков. Если требуется найти вопросительный знак или звездочку, введите перед ним тильду (~).

  • Если значение find_text не найдено, #VALUE! возвращается значение ошибки.

  • Если аргумент начальная_позиция опущен, то он полагается равным 1.

  • Если start_num больше нуля или больше, чем длина аргумента within_text, #VALUE! возвращается значение ошибки.

  • Аргумент начальная_позиция можно использовать, чтобы пропустить определенное количество знаков. Допустим, что функцию ПОИСК нужно использовать для работы с текстовой строкой «МДС0093.МужскаяОдежда». Чтобы найти первое вхождение «М» в описательной части текстовой строки, задайте для аргумента начальная_позиция значение 8, чтобы поиск не выполнялся в той части текста, которая является серийным номером (в данном случае — «МДС0093»). Функция ПОИСК начинает поиск с восьмого символа, находит знак, указанный в аргументе искомый_текст, в следующей позиции, и возвращает число 9. Функция ПОИСК всегда возвращает номер знака, считая от начала просматриваемого текста, включая символы, которые пропускаются, если значение аргумента начальная_позиция больше 1.

Примеры

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Данные

Выписки

Доход: маржа

маржа

Здесь «босс».

Формула

Описание

Результат

=ПОИСК(«и»;A2;6)

Позиция первого знака «и» в строке ячейки A2, начиная с шестого знака.

7

=ПОИСК(A4;A3)

Начальная позиция строки «маржа» (искомая строка в ячейке A4) в строке «Доход: маржа» (ячейка, в которой выполняется поиск — A3).

8

=ЗАМЕНИТЬ(A3;ПОИСК(A4;A3);6;»объем»)

Заменяет слово «маржа» словом «объем», определяя позицию слова «маржа» в ячейке A3 и заменяя этот знак и последующие пять знаков текстовой строкой «объем.»

Доход: объем

=ПСТР(A3;ПОИСК(» «;A3)+1,4)

Возвращает первые четыре знака, которые следуют за первым пробелом в строке «Доход: маржа» (ячейка A3).

марж

=ПОИСК(«»»»;A5)

Позиция первой двойной кавычки («) в ячейке A5.

5

=ПСТР(A5;ПОИСК(«»»»;A5)+1;ПОИСК(«»»»;A5;ПОИСК(«»»»;A5)+1)-ПОИСК(«»»»;A5)-1)

Возвращает из ячейки A5 только текст, заключенный в двойные кавычки.

босс

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

Функция ПОИСК (SEARCH) в Excel используется для определения расположения текста внутри какого-либо текста и указания его точной позиции.

Содержание

  1. Что возвращает функция
  2. Синтаксис
  3. Аргументы функции
  4. Дополнительная информация
  5. Примеры использования функции ПОИСК в Excel
  6. Пример 1. Ищем слово внутри текстовой строки (с начала)
  7. Пример 2. Ищем слово внутри текстовой строки (с указанием стартовой позиции поиска)
  8. Пример 3. Поиск слова при наличии нескольких совпадений в тексте
  9. Пример 4. Используем подстановочные знаки при работе функции ПОИСК в Excel

Что возвращает функция

Функция возвращает числовое значение, обозначающее стартовую позицию искомого текста внутри другого текста. Позиция обозначает порядковый номер символа, с которого начинается искомый текст.

Синтаксис

=SEARCH(find_text, within_text, [start_num]) — английская версия

=ПОИСК(искомый_текст;просматриваемый_текст;[начальная_позиция]) — русская версия

Аргументы функции

  • find_text (искомый_текст) — текст или текстовая строка которую вы хотите найти;
  • within_text (просматриваемый_текст) — текст, внутри которого вы осуществляете поиск;
  • [start_num] ([начальная_позиция]) — числовое значение, обозначающее позицию, с которой вы хотите начать поиск. Если не указать этот аргумент, то функция начнет поиск с начала текста.

Дополнительная информация

  • Если стартовая позиция поиска не указана, то поиск текста осуществляется сначала текста;
  • Функция не чувствительна к регистру. Если вам нужна чувствительность к регистру, то используйте функцию НАЙТИ;
  • Функция может обрабатывать подстановочные знаки. В Excel существует три подстановочных знака — ?, *, ~.
    • знак «?» — сопоставляет любой одиночный символ;
    • знак «*» — сопоставляет любые дополнительные символы;
    • знак «~» — используется, если нужно найти сам вопросительный знак или звездочку.
  • Функция возвращает ошибку, в случае если искомый текст не найден.

Примеры использования функции ПОИСК в Excel

Пример 1. Ищем слово внутри текстовой строки (с начала)

Функция ПОИСК в Excel

На примере выше видно, что когда мы ищем слово «доброе» в тексте «Доброе утро», функция возвращает значение «1», что соответствует позиции слова «доброе» в тексте «Доброе утро».

Так как функция не чувствительна к регистру, нет разницы каким образом мы указываем искомое слово «доброе», будь то «ДОБРОЕ», «Доброе», «дОброе» и.т.д. функция вернет одно и то же значение.

Если вам необходимо осуществить поиск чувствительный к регистру — используйте функцию НАЙТИ в Excel.

Telegram Logo Больше лайфхаков в нашем Telegram Подписаться

Пример 2. Ищем слово внутри текстовой строки (с указанием стартовой позиции поиска)

Функция ПОИСК в Excel

Третий аргумент функции указывает на порядковый номер позиции внутри текста, с которой будет осуществлен поиск. На примере выше, функция возвращает значение «1» при поиске слова «доброе» в тексте «Доброе утро», начиная свой поиск с первой позиции.

Вместе с тем, если мы указываем функции, что поиск следует начинать со второго символа текста «Доброе утро», то есть функция в этом случае видит текст как «оброе утро» и ищет слово «доброе», то результатом будет ошибка.

Если вы не указываете в качестве аргумента стартовую позицию для поиска, функция автоматически начнет поиск  с начала текста.

Пример 3. Поиск слова при наличии нескольких совпадений в тексте

Функция ПОИСК в Excel

Функция начинает искать текст со стартовой позиции которую мы можем указать в качестве аргумента, или она начнет поиск с начала текста автоматически. На примере выше, мы ищем слово «доброе » в тексте «Доброе доброе утро» со стартовой позицией для поиска «1». В этом случае функция возвращает «1», так как первое найденное слово «Доброе» начинается с первого символа текста.

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

Пример 4. Используем подстановочные знаки при работе функции ПОИСК в Excel

Функция ПОИСК в Excel

При поиске функция учитывает подстановочные знаки. На примере выше мы ищем текст «c*l». Наличие подстановочного знака «*» в данном запросе обозначает что мы ищем любо слово, которое начинается с буквы «c» и заканчивается буквой «l», а что между этими двумя буквами неважно. Как результат, функция возвращает значение «3», так как в слове «Excel», расположенном в ячейке А2 буква «c» находится на третьей позиции.

  • Что делает функция ПОИСК?
  • Синтаксис
  • Форматирование
  • Поиск символа в ячейке
  • Извлечь первое слово
  • Другие примеры использования
  • Функция ПОИСК в формуле массива
Функция поиск - таблица с примерами
Функция ПОИСК в Excel – примеры

Что делает функция ПОИСК?

Эта функция аналогична функции НАЙТИ и так же ищет подстроку в строке. Когда искомое найдено, отображается его позиция в тексте в виде числа.

Отличие от функции НАЙТИ в том, что ПОИСК не принимает в расчет регистр текста. Как искомого, так и того, в котором мы ищем. Также она поддерживает подстановочные операторы.

У обеих функций есть процедура-аналог Найти и Заменить – как у процедуры, у нее есть свои преимущества и недостатки.

Синтаксис

=ПОИСК(ИскомыйТекст;СтрокаВКоторойИщем;[СтартоваяПозиция])
  • ИскомыйТекст — символ или сочетание, которое ищем
  • СтрокаВКоторойИщем — ячейка, текстовое значение или любое возвращаемое другой функцией выражение.
  • Стартовая позиция — опциональный параметр, при отсутствии поиск происходит с первого символа

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

Если искомое не найдено в тексте, функция возвращает ошибку #ЗНАЧ.

Форматирование

При поиске дат функция ПОИСК, как и все текстовые функции, воспринимает их как числа, поэтому для корректного поиска может понадобиться функция ТЕКСТ.

При этом логические значения ИСТИНА и ЛОЖЬ конвертируются в текст, соответствующий их написанию.

Поиск символа в ячейке

Наиболее простой пример использования функции – осуществление поиска определенного символа в ячейке.

Логика проста – если поиск позиции символа не возвращает ошибку, значит, символ в ячейке присутствует:

=НЕ(ЕОШ(ПОИСК(паттерн;текст)))
поиск символа в ячейке - пример таблицы
Поиск символа в ячейке формулой ПОИСК

Извлечь первое слово

В этом простейшем примере извлекаем первое слово из ячейки с помощью комбинации — функция ЛЕВСИМВ + функция ПОИСК. Поскольку пробел — регистронезависимый символ, для этого случая можно использовать и функцию НАЙТИ.

Функция поиск в формуле извлечения текста до пробела
Определяем номер позиции первого пробела и возвращаем символы до этой позиции

Таблица выше была использована для извлечения имени из строки с именем и фамилией.

  1. ПОИСК возвращает позицию пробела между именем и фамилией.
  2. Длина имени вычисляется как позиция пробела минус 1.
  3. Функция ЛЕВСИМВ извлекает имя на основе его длины.

Другие примеры использования

Найти первую цифру в ячейке:

=МИН(ЕСЛИОШИБКА(ПОИСК({0:9:8:7:6:5:4:3:2:1};A1);1000))

Найти первую цифру в ячейке и вернуть все, что перед ней:

=ЛЕВСИМВ(A1,МИН(ЕСЛИОШИБКА(ПОИСК({0:9:8:7:6:5:4:3:2:1};A1);1000))-1)

Узнать, содержит ли ячейка латиницу. Формула вернет «ИСТИНА» или «ЛОЖЬ»:

=СЧЁТ(ПОИСК({"a":"b":"c":"d":"e":"f":"g":"h":"i":"j":"k":"l":"m":"n":"o":"p":"q":"r":"s":"t":"u":"v":"w":"x":"y":"z"};A1))>0

Найти кириллицу в тексте аналогичным путем:

=СЧЁТ(ПОИСК({"а":"б":"в":"г":"д":"е":"ё":"ж":"з":"и":"й":"к":"л":"м":"н":"о":"п":"р":"с":"т":"у":"ф":"х":"ц":"ч":"ш":"щ":"ъ":"ы":"ь":"э":"ю":"я"};A1))>0

Функция ПОИСК в формуле массива

Примеры выше, где буквы перечислены явно в строковом массиве, занимает довольно много места. Буквы при этом идут подряд, что наводит на мысль, что их можно как-то иначе выразить как диапазон.

И действительно, это возможно с помощью комбинации с функциями СТРОКА и ПОИСК:

{=СЧЁТ(ПОИСК(СИМВОЛ(СТРОКА(65:90));A1))>0}

Отличие этой формулы массива от предыдущих — ее нужно вводить без фигурных скобок, они появятся при вводе формулы сочетанием Ctrl+Shift+Enter (вместо обычного Enter). В формуле выше, где явно прописаны все буквы, фигурные скобки вводятся вручную — это явное указание строкового массива.

Что происходит в этой формуле?

  • Функция СТРОКА с численным аргументом “65:90” возвращает массив чисел с 65 по 90 включительно. Как раз в этом диапазоне в таблице ASCII находятся все символы латиницы;
  • Функция СИМВОЛ возвращает для каждого числового значения в этом массиве его символ, таким образом создавая массив латинских символов;
  • Функция ПОИСК производит поиск каждого из этих символов в строке и возвращает либо число, либо ошибку, таким образом создавая массив чисел и ошибок
  • Функция СЧЁТ считает числовые значения в полученном массиве. Если результат больше нуля, значит, хотя бы один символ латиницы был найден. Если нет (все поиски вернули ошибку), значит, не был

Аналогичная формула для кириллицы:

{=СЧЁТ(ПОИСК(СИМВОЛ(СТРОКА(192:223));A1))>0}

Подробнее о поиске и извлечении кириллицы и латиницы в Excel можно почитать тут:

Найти латиницу или кириллицу в тексте

Есть еще множество комбинаций функции ПОИСК с другими функциями Excel, смотрите разделы:
Функция ИЛИ
Функция И
Функция ЗНАЧЕН
Удалить первое слово в ячейке Excel


Смотрите также по теме:

ОБНАРУЖИТЬ (функционал надстройки !SEMTools)

Регулярные выражения в Excel

Найти определенные символы в Excel

Найти слова в ячейках

Найти числа в текстовых ячейках

Понравилась статья? Поддержите ее автора!
Набор инструментов !SEMTools поможет решить множество задач без ввода сложных формул и сэкономит ваше время. И вам полезно, и автору приятно!

Функция ПОИСК осуществляет поиск текста, символа, цифры в указанной области. Она похожа на функцию НАЙТИ, которая так же ищет значение в указанной области, но у них есть отличия, которые мы разберем на примерах.

Как работает функция ПОИСК в Excel

Синтаксис данной функции выглядит следующим образом:

Синтаксис ПОИСК

У нас есть слово «Excel». В этом примере нужно найти положение буквы «Х» в слове. Функция возвратит значение 2, поскольку буква находится по счету на втором месте в искомых данных:

буква 2

Несмотря на то, что искомая буква «Х» находится в верхнем регистре, функция нашла ее аналог в нижнем регистре и выдала результат. В этом и есть отличие с функцией НАЙТИ – она обращает внимание на соответствие регистров.

Также мы можем искать часть слова или слово в искомой области, например найти слово «Excel» в «Exceltable» и «table» во фразе «Excel table». В первом случае в результате мы получим 1, потому что слово «Excel» начинается с первого символа. Во втором случае у нас будет результат 7, потому что «table» начинается с седьмого символа:

table 7

Аргумент начальная_позиция используем, когда нужно отсчитать положение символа, начиная с которого возвратится искомое значение. Например, нужно отследить с какой позиции начинается буквенное значение кода. Если не указать номер позиции, у нас возвратится число «2», поскольку буква «о» в ячейке А8 находится второй по порядку:

буквенное значение кода 2

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



Функция ПОИСКа значения в столбце Excel

В данном примере будет использоваться формула комбинации функции ПОИСК с функциями: ЛЕВСИМВ, ПРАВСИМВ, ДЛСТР. Рассмотрим поэтапно пример, где мы сможем извлекать части фраз с текста, из которого получим искомое значение. У нас есть товар и артикул товара. Наше задание – возвратить только буквенную часть названия артикула. Для этого в ячейке C12 начинаем писать формулу. Для получения результата нам нужна функция ЛЕВСИМВ.

  1. Первый аргумент — текст, в котором происходит поиск (ячейка B12).
  2. Второй аргумент — нужна длина искомого слова. В первом артикуле она равна 3, а в последующих меняется, поэтому используем формулу ПОИСК(«_»;B12).

Формула с аргументами («_»;B12) указала, что будут возвращаться те символы, которые расположены перед символом нижнего подчеркивания. Проверим наш результат:

символы расположены перед _

Функция ПОИСК возвратила число 4 (порядочное положение знака нижнего подчеркивания), и в качестве второго аргумента функции ЛЕВСИМВ указала какие символы будут находиться в ячейке С12. Пока что это не совсем то, что необходимо получить – знак «_» в идеале должен отсутствовать. Для этого немного подкорректируем формулу: перед вторым аргументом (формулой ПОИСК) отнимаем единицу, этим мы указали что вывод символов будет без знака нижнего подчеркивания (4-1):

формула ПОИСК

Поскольку формула у нас динамическая, копируем ее до конца столбца и наблюдаем результат нашей работы – по каждому артикулу мы получили буквенное значение независимо от количества букв:

результат работы

Если вдруг вам понадобится в этой же таблице изменить артикул – функция среагирует на изменения корректно и автоматически возвратит текстовое значение заменённого артикула. Например для товара «Бокал» будет буквенная часть «К», для «Тарелки» — «М», для «Стола» — ADCDE:

текстовое значение

Теперь рассмотрим пример, где будем извлекать символы не ПЕРЕД нижним подчеркиванием, а ПОСЛЕ. В этом нам поможет функция ДЛСТР. Она помогает узнать длину текстовой строки. В ячейке С20 пишем формулу:

функция ДЛСТР

В результате она возвратила нам длину артикула товара «Бокал». Скопируем формулу до конца столбца и в следующем этапе в ячейке Е20 напишем формулу ПОИСК. Нижнее подчеркивание – это искомое значение (аргумент 1), возвращаемое значение – позиция порядковый номер положения нижнего подчеркивания. Копируем до конца столбца:

порядковый номер символа _

Затем нам нужен столбец, где мы от длины строки отнимаем позицию нижнего подчеркивания (9 — 4) и копируем формулу до конца столбца. То есть этот столбец содержит длину числового значения артикула (значения ПОСЛЕ нижнего подчеркивания):

значения после символа _

Теперь в ячейке F20 пишем функцию ПРАВСИМВ, которая возвратит нам текст, часть фразы, которую мы запрашимаем. Первый аргумент функции – это ячейка, которую проверяет формула, а второй – длина возвращаемого значения:

формула с ПРАВСИМВ

Функция возвратила нам числовое значение артикула товара. Копируем до конца столбца и получаем результат по каждому товару:

результат 2

Данный пример был рассмотрен поэтапно для более понятного алгоритма выполнения задачи, однако можно числовое значение получить одним шагом:

пример поэтапно

В этом примере мы сделали то же самое, что и ранее, только все операции сделали в одной формуле: нашли длину текста, отняли длину текста после знака «_» и возвратили эту длину функцией ПРАВСИМВ.

Как использовать функцию ПОИСК с функцией ЕСЛИ

Рассмотрим пример, где будем проверять частичное совпадение текста в проверяемом тексте. У нас есть несколько адресов и нам нужно знать локальные они или нет:

как проверять частичное совпадение

Если почтовый индекс начинается с СВ2, тогда это локальный адрес. Мы не можем использовать функцию ЕСЛИ в её обычном выражении, потому что в ячейках много другого текста. Нам нужно знать содержит ли ячейка часть «СВ2». Чтобы лучше понимать логику построения функции, будем делать это от простого к более сложному выражению:

  1. Строим функцию ПОИСК: 1-й аргумент – «СВ2», 2-й аргумент – ячейка А37, копируем до конца столбца. Так мы указали что и где будем искать. Там, где нет текста СВ2, возвратилась ошибка. Но сейчас у нас есть только номер позиции текста СВ2. А функция ЕСЛИ будет искать идентичное совпадение. То есть она будет искать число 11 в тексте ячейки А37, которого у нас, конечно, не будет нигде.
  2. формула с ЕСЛИ

  3. Формулу функции ПОИСК вкладываем в функцию ЕЧИСЛО (имеет только 1 аргумент), которая будет указателем в дальнейшем для ЕСЛИ, что результатом функции ПОИСК является число (как сейчас, у нас 11):
  4. формула с ЕЧИСЛО

  5. Полученную формулу вкладываем в ЕСЛИ, указывая, что для значения ИСТИНА у нас будет слово «Местный», а для значения ЛОЖЬ – «Далеко». Копируем до конца столбца:
  6. значения ИСТИНА Местный ЛОЖЬ Далеко

download file Скачать примеры формул с функцией ПОИСК в Excel

Теперь у нас есть информация об адресах в зависимости от их почтового индекса. Вполне логичное предположение, что можно также было использовать НАЙТИ, но поскольку НАЙТИ учитывает регистр, полезнее и надежнее будет работа с ПОИСКом.


Функция

ПОИСК(

)

, английский вариант SEARCH(),

находит первое вхождение одной текстовой строки в другой строке и возвращает начальную позицию найденной строки.

Синтаксис функции


ПОИСК

(

искомый_текст

;

просматриваемая_строка

;[нач_позиция])


Искомый_текст

— текст, который требуется найти.


Просматриваемая_строка

— текст, в которой ищется

Искомый_текст

.


Нач_позиция

— позиция знака в просматриваемой_строке, с которой должен начинаться поиск. Если аргумент

нач_позиция

опущен, то предполагается значение 1.

В аргументе

искомый_текст

можно использовать

подстановочные знаки

— вопросительный знак (?) и звездочку (*). Вопросительный знак соответствует любому знаку; звездочка — любой последовательности знаков. Если нужно найти в тексте вопросительный знак или звездочку, следует поставить перед ними тильду (~).

Если искомый_текст не найден, возвращается значение ошибки #ЗНАЧ!

Функция

ПОИСК()

не учитывает РЕгиСТР букв. Для поиска с учетом регистра следует воспользоваться функцией

НАЙТИ()

.

Примеры

Формула

=ПОИСК(«к»;»Первый канал»)

вернет 8, т.к. буква

к

находится на 8-й позиции слева.

Пусть в ячейке

А2

введена строка

Первый канал — лучший

. Формула

=ПОИСК(СИМВОЛ(32);A2)

вернет 7, т.к. символ пробела (код 32) находится на 7-й позиции.

Формула

=ПОИСК(«#???#»;»Артикул #123# ID»)

будет искать в строке »

Артикул #123# ID

» последовательность из 5 символов, которая начинается и заканчивается на знак #.

Чтобы найти позицию второго вхождения буквы «а» в строке «мама мыла раму» используйте формулу

=ПОИСК(«а»;»мама мыла раму»;ПОИСК(«а»;»мама мыла раму»)+1).

Чтобы определить есть ли третье вхождение буквы «м» в строке «мама мыла раму» используйте формулу

=ЕСЛИ(ДЛСТР(ПОДСТАВИТЬ(«мама мыла раму»;»м»;»»;3))=ДЛСТР(«мама мыла раму»);»Нет третьего вхождения м»;»Есть третье вхождение м»)

Формула

=ПОИСК(«клад?»;»докладная»)

вернет 3, т.е. в слове «докладная» содержится слово из 5 букв, первые 4 из которых

клад

(начиная с третьей буквы слова

докладная

).

Функция

НАЙТИ()

vs

ПОИСК()

Функция

НАЙТИ()

учитывает РЕгиСТР букв и не допускает использование подстановочных знаков. Для поиска без учета регистра, а также для поиска с использованием

подстановочных знаков

пользуйтесь функцией

ПОИСК()

.

Связь с функциями

ЛЕВСИМВ()

,

ПРАВСИМВ()

и

ПСТР()

Функция

ПОИСК()

может быть использована совместно с функциями

ЛЕВСИМВ()

,

ПРАВСИМВ()

и

ПСТР()

.

Например, в ячейке

А2

содержится фамилия и имя «Иванов Иван», то формула

=ЛЕВСИМВ(A2;ПОИСК(СИМВОЛ(32);A2)-1)

извлечет фамилию, а

=ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(СИМВОЛ(32);A2))

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

СЖПРОБЕЛЫ()

.

Функция ПОИСК (SEARCH) в Excel используется для определения расположения текста внутри какого-либо текста и указания его точной позиции.

Что возвращает функция

Функция возвращает числовое значение, обозначающее стартовую позицию искомого текста внутри другого текста. Позиция обозначает порядковый номер символа, с которого начинается искомый текст.

Синтаксис

=SEARCH(find_text, within_text, [start_num]) – английская версия

=ПОИСК(искомый_текст;просматриваемый_текст;[начальная_позиция]) – русская версия

Аргументы функции

  • find_text (искомый_текст) – текст или текстовая строка которую вы хотите найти;
  • within_text (просматриваемый_текст) – текст, внутри которого вы осуществляете поиск;
  • [start_num] ([начальная_позиция]) – числовое значение, обозначающее позицию, с которой вы хотите начать поиск. Если не указать этот аргумент, то функци начнет поиск с начала текста.

Дополнительная информация

  • Если стартовая позиция поиска не указана, то поиск текста осуществляется сначала текста;
  • Функция не чувствительна к регистру. Если вам нужна чувствительность к регистру, то используйте функцию НАЙТИ;
  • Функция может обрабатывать подстановочные знаки. В Excel существует три подстановочных знака – ?, *,

.

  • знак “?” – сопоставляет любой одиночный символ;
  • знак “*” – сопоставляет любые дополнительные символы;
  • знак “

” – используется, если нужно найти сам вопросительный знак или звездочку.

  • Функция возвращает ошибку, в случае если искомый текст не найден.
  • Пример 1. Ищем слово внутри текстовой строки (с начала)

    На примере выше видно, что когда мы ищем слово “доброе” в тексте “Доброе утро”, функция возвращает значение “1”, что соответствует позиции слова “доброе” в тексте “Доброе утро”.

    Так как функция не чувствительна к регистру, нет разницы каким образом мы указываем искомое слово “доброе”, будь то “ДОБРОЕ”, “Доброе”, “дОброе” и.т.д. функция вернет одно и то же значение.

    Если вам необходимо осуществить поиск чувствительный к регистру – используйте функцию НАЙТИ в Excel.

    Пример 2. Ищем слово внутри текстовой строки (с указанием стартовой позиции поиска)

    Третий аргумент функции указывает на порядковый номер позиции внутри текста, с которой будет осуществлен поиск. На примере выше, функция возвращает значение “1” при поиске слова “доброе” в тексте “Доброе утро”, начиная свой поиск с первой позиции.

    Вместе с тем, если мы указываем функции, что поиск следует начинать со второго символа текста “Доброе утро”, то есть функция в этом случае видит текст как “оброе утро” и ищет слово “доброе”, то результатом будет ошибка.

    Если вы не указываете в качестве аргумента стартовую позицию для поиска, функция автоматически начнет поиск с начала текста.

    Пример 3. Поиск слова при наличии нескольких совпадений в тексте

    Функция начинает искать текст со стартовой позиции которую мы можем указать в качестве аргумента, или она начнет поиск с начала текста автоматически. На примере выше, мы ищем слово “доброе ” в тексте “Доброе доброе утро” со стартовой позицией для поиска “1”. В этом случае функция возвращает “1”, так как первое найденное слово “Доброе” начинается с первого символа текста.

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

    Пример 4. Используем подстановочные знаки при работе функции ПОИСК в Excel

    При поиске функция учитывает подстановочные знаки. На примере выше мы ищем текст “c*l”. Наличие подстановочного знака “*” в данном запросе обозначает что мы ищем любо слово, которое начинается с буквы “c” и заканчивается буквой “l”, а что между этими двумя буквами не важно. Как результат, функция возвращает значение “3”, так как в слове “Excel”, расположенном в ячейке А2 буква “c” находится на третьей позиции.

    В приложении Excel предусмотрено большое разнообразие инструментов для обработки текстовых и числовых данных. Одним из наиболее востребованных является функция ПОИСК. Она позволяет определять в строке, ячейке с текстовой информацией позицию искомой буквенной или числовой комбинации и записывать ее с помощью чисел.

    Примеры использования функции ПОИСК в Excel

    Для нахождения позиции текстовой строки в другой аналогичной применяют ПОИСК и ПОИСКБ. Расчет ведется с первого символа анализируемой ячейки. Так, если задать функцию ПОИСК “л” для слова «апельсин» мы получим значение 4, так как именно такой по счету выступает заданная буква в текстовом выражении.

    Функция ПОИСК работает не только для поиска позиции отдельных букв в тексте, но и для целой комбинации. Например, задав данную команду для слов «book», «notebook», мы получим значение 5, так как именно с этого по счету символа начинается искомое слово «book».

    Используют функцию ПОИСК наряду с такими, как:

    • НАЙТИ (осуществляет поиск с учетом регистра);
    • ПСТР (возвращает текст);
    • ЗАМЕНИТЬ (заменяет символы).

    Важно помнить, что рассматриваемая команда ПОИСК не учитывает регистра. Если мы с помощью нее станем искать положение буквы «а» в слове «Александр», в ячейке появится выражение 1, так как это первый символ в анализируемой информации. При задании команды НАЙТИ «а» в том же отрезке текста, мы получим значение 6, так как именно 6 позицию занимает строчная «а» в слове «Александр».

    Кроме того, функция ПОИСК работает не для всех языков. От команды ПОИСКБ она отличается тем, что на каждый символ отсчитывает по 1 байту, в то время как ПОИСКБ — по два.

    Чтобы воспользоваться функцией, необходимо ввести следующую формулу:

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

    1. Искомый текст. Это числовая и буквенная комбинация, позицию которой требуется найти.
    2. Анализируемый текст. Это тот фрагмент текстовой информации, из которого требуется вычленить искомую букву или сочетание и вернуть позицию.
    3. Начальная позиция. Данный фрагмент необязателен для ввода. Но, если вы желаете найти, к примеру, букву «а» в строке со значением «А015487.Мужская одежда», то необходимо указать в конце формулы 8, чтобы анализ этого фрагмента проводился с восьмой позиции, то есть после артикула. Если этот аргумент не указан, то он по умолчанию считается равным 1. При указании начальной позиции положение искомого фрагмента все равно будет считаться с первого символа, даже если начальные 8 были пропущены в анализе. То есть в рассматриваемом примере букве «а» в строке «А015487.Мужская одежда» будет присвоено значение 14.

    При работе с аргументом «искомый_текст» можно использовать следующие подстановочные знаки.

    1. Вопросительный знак (?). Он будет соответствовать любому знаку.
    2. Звездочка (*). Этот символ будет соответствовать любой комбинации знаков.

    Если же требуется найти подобные символы в строке, то в аргументе «искомый_текст» перед ними нужно поставить тильду (

    Если искомый текст не был найден приложением или начальная позиция установлена меньше 0, больше общего количества присутствующих символов, в ячейке отобразиться ошибка #ЗНАЧ.

    Если «искомый_текст» не найден, возвращается значение ошибки #ЗНАЧ.

    Пример использования функции ПОИСК и ПСТР

    Пример 1. Есть набор текстовой информации с контактными данными клиентов и их именами. Информация записана в разных форматах. Необходимо найти, с какого символа начинается номер телефона.

    Введем исходные данные в таблицу:

    В ячейке, которая будет учитывать данные клиентов без телефона, введем следующую формулу:

    Нажмем Enter для отображения искомой информации:

    Далее мы можем использовать любые другие функции для отображения представленной информации в удобном формате:

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

    Пример формулы ПОИСК и ЗАМЕНИТЬ

    Пример 2. Есть таблица с текстовой информацией, в которой слово «маржа» нужно заменить на «объем».

    Откроем книгу Excel с обрабатываемыми данными. Пропишем формулу для поиска нужного слова «маржа»:

    Теперь дополним формулу функцией ЗАМЕНИТЬ:

    Чем отличается функция ПОИСК от функции НАЙТИ в Excel?

    Функция ПОИСК очень схожа с функцией НАЙТИ по принципу действия. Более того у них фактически одинаковые аргументы. Только лишь названия аргументов отличаются, а по сути и типам значений – одинаковые:

    Но опытный пользователь Excel знает, что отличие у этих двух функций очень существенные.

    Отличие №1. Чувствительность к верхнему и нижнему регистру (большие и маленькие буквы). Функция НАЙТИ чувствительна к регистру символов. Например, есть список номенклатурных единиц с артикулом. Необходимо найти позицию маленькой буквы «о».

    Теперь смотрите как ведут себя по-разному эти две функции при поиске большой буквы «О» в критериях поиска:

    Отличие №2. В первом аргументе «Искомый_текст» для функции ПОИСК мы можем использовать символы подстановки для указания не точного, а приблизительного значения, которое должно содержаться в исходной текстовой строке. Вторая функция НАЙТИ не умеет использовать в работе символы подстановки масок текста: «*»; «?»; «

    Для примера попробуем в этих же исходных строках столбца «наименования» найти приблизительный текст. Для этого укажем следующий вид критерия поиска используя символы подстановки: «н*ая».

    Как видим во втором отличии функция НАЙТИ совершенно не умеет работать и распознавать спецсимволы для подстановки текста в критериях поиска при неточном совпадении в исходной строке.

    Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

    В этой статье описаны синтаксис формулы и использование функций ПОИСК и ПОИСКБ в Microsoft Excel.

    Описание

    Функции ПОИСК И ПОИСКБ находят одну текстовую строку в другой и возвращают начальную позицию первой текстовой строки (считая от первого символа второй текстовой строки). Например, чтобы найти позицию буквы «n» в слове «printer», можно использовать следующую функцию:

    Эта функция возвращает 4, так как «н» является четвертым символом в слове «принтер».

    Можно также находить слова в других словах. Например, функция

    возвращает 5, так как слово «base» начинается с пятого символа слова «database». Можно использовать функции ПОИСК и ПОИСКБ для определения положения символа или текстовой строки в другой текстовой строке, а затем вернуть текст с помощью функций ПСТР и ПСТРБ или заменить его с помощью функций ЗАМЕНИТЬ и ЗАМЕНИТЬБ. Эти функции показаны в примере 1 данной статьи.

    Эти функции могут быть доступны не на всех языках.

    Функция ПОИСКБ отсчитывает по два байта на каждый символ, только если языком по умолчанию является язык с поддержкой БДЦС. В противном случае функция ПОИСКБ работает так же, как функция ПОИСК, и отсчитывает по одному байту на каждый символ.

    К языкам, поддерживающим БДЦС, относятся японский, китайский (упрощенное письмо), китайский (традиционное письмо) и корейский.

    Синтаксис

    Аргументы функций ПОИСК и ПОИСКБ описаны ниже.

    Искомый_текст Обязательный. Текст, который требуется найти.

    Просматриваемый_текст Обязательный. Текст, в котором нужно найти значение аргумента искомый_текст.

    Начальная_позиция Необязательный. Номер знака в аргументе просматриваемый_текст, с которого следует начать поиск.

    Замечание

    Функции ПОИСК и ПОИСКБ не учитывают регистр. Если требуется учитывать регистр, используйте функции НАЙТИ и НАЙТИБ.

    В аргументе искомый_текст можно использовать подстановочные знаки: вопросительный знак ( ?) и звездочку ( *). Вопросительный знак соответствует любому знаку, звездочка — любой последовательности знаков. Если требуется найти вопросительный знак или звездочку, введите перед ним тильду (

    Если значение аргумента искомый_текст не найдено, #VALUE! возвращено значение ошибки.

    Если аргумент начальная_позиция опущен, то он полагается равным 1.

    Если Нач_позиция не больше 0 или больше, чем длина аргумента просматриваемый_текст , #VALUE! возвращено значение ошибки.

    Аргумент начальная_позиция можно использовать, чтобы пропустить определенное количество знаков. Допустим, что функцию ПОИСК нужно использовать для работы с текстовой строкой «МДС0093.МужскаяОдежда». Чтобы найти первое вхождение «М» в описательной части текстовой строки, задайте для аргумента начальная_позиция значение 8, чтобы поиск не выполнялся в той части текста, которая является серийным номером (в данном случае — «МДС0093»). Функция ПОИСК начинает поиск с восьмого символа, находит знак, указанный в аргументе искомый_текст, в следующей позиции, и возвращает число 9. Функция ПОИСК всегда возвращает номер знака, считая от начала просматриваемого текста, включая символы, которые пропускаются, если значение аргумента начальная_позиция больше 1.

    Примеры

    Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

    The SEARCH function returns the position (as a number) of one text string inside another. If there is more than one occurrence of the search string, SEARCH returns the position of the first occurrence. SEARCH is not case-sensitive but does support wildcards. Use the FIND function to perform a case-sensitive find. When SEARCH does not find anything, it returns a #VALUE! error. Note that when find_text is empty, SEARCH will return 1. This can cause a false positive when find_text is an empty cell.

    Basic Example

    The SEARCH function is designed to look inside a text string for a specific substring. If SEARCH finds the substring, it returns a position of the substring in the text as a number. If the substring is not found, SEARCH returns a #VALUE error. For example:

    =SEARCH("p","apple") // returns 2
    =SEARCH("z","apple") // returns #VALUE!

    Note that text values entered directly into SEARCH must be enclosed in double-quotes («»).

    TRUE or FALSE result

    To force a TRUE or FALSE result, nest SEARCH inside the ISNUMBER function. ISNUMBER returns TRUE for numbers and FALSE for anything else. If SEARCH finds the substring, it returns the position as a number, and ISNUMBER returns TRUE:

    =ISNUMBER(SEARCH("p","apple")) // returns TRUE
    =ISNUMBER(SEARCH("z","apple")) // returns FALSE

    If SEARCH doesn’t find the substring, it returns an error, and ISNUMBER returns FALSE. 

    Start number

    The SEARCH function has an optional argument called start_num, that controls where SEARCH should begin looking for a substring. To find the first match of «the», you can omit start_num, which defaults to 1:

    =SEARCH("the","The cat in the hat") // returns 1
    

    To start searching at character 4, enter 4 for start_num:

    =SEARCH("the","The cat in the hat",4) // returns 12
    

    Wildcards

    Although SEARCH is not case-sensitive, it does support wildcards (*?~). For example, the question mark (?) wildcard matches any one character. The formula below looks for a 3-character substring beginning with «x» and ending in «y»:

    =ISNUMBER(SEARCH("x?z","xyz")) // TRUE
    =ISNUMBER(SEARCH("x?z","xbz")) // TRUE
    =ISNUMBER(SEARCH("x?z","xyy")) // FALSE

    The asterisk (*) wildcard is not as useful in the SEARCH function because SEARCH already looks for a substring. For example, it might seem like the following formula will test for a value that ends with «z»:

    =SEARCH("*z",text)

    However, because SEARCH automatically looks for a substring, the following formulas all return 1 as a result, even though the text in the first formula is the only text that ends with «z»:

    =SEARCH("*z","XYZ") // returns 1
    =SEARCH("*z","XYZXY") // returns 1
    =SEARCH("*z","XYZXY123") // returns 1
    =SEARCH("x*z","XYZXY123") // returns 1

    However, it is possible to use the asterisk (*) wildcard like this: 

    =SEARCH("x*2*b","AAAXYZ123ABCZZZ") // returns 4
    =SEARCH("x*2*b","NXYZ12563JKLB") // returns 2

    Here we are looking for «x», «2», and «b» in that order, with any number of characters in between. Finally, use the tilde (~) as an escape character to indicate that the next character is a literal like this:

    =SEARCH("~*","apple*") // returns 6
    =SEARCH("~?","apple?") // returns 6
    =SEARCH("~~","apple~") // returns 6

    The above formulas use SEARCH to find a literal asterisk (*), question mark (?) , and tilde (~) in that order.

    If cell contains

    To return a custom result with the SEARCH function, use the IF function like this:

    =IF(ISNUMBER(SEARCH(substring,A1)), "Yes", "No")
    

    Instead of returning TRUE or FALSE, the formula above will return «Yes» if substring is found and «No» if not.

    Notes

    • SEARCH returns the position of the first find_text in within_text.
    • Start_num is optional and defaults to 1.
    • Use the FIND function for a case-sensitive search.
    • SEARCH allows the wildcard characters question mark (?) and asterisk (*), in find_text.
      • ? matches any single character and
      • * matches any sequence of characters.
      • To find a literal ? or *, use a tilde (~) before the character, i.e. ~* and ~?.

    Функция SEARCH (ПОИСК) в Excel. Как использовать?

    Функция ПОИСК (SEARCH) в Excel используется для определения расположения текста внутри какого-либо текста и указания его точной позиции.

    Что возвращает функция

    Функция возвращает числовое значение, обозначающее стартовую позицию искомого текста внутри другого текста. Позиция обозначает порядковый номер символа, с которого начинается искомый текст.

    =SEARCH(find_text, within_text, [start_num]) – английская версия

    =ПОИСК(искомый_текст;просматриваемый_текст;[начальная_позиция]) – русская версия

    Аргументы функции

    • find_text (искомый_текст) – текст или текстовая строка которую вы хотите найти;
    • within_text (просматриваемый_текст) – текст, внутри которого вы осуществляете поиск;
    • [start_num] ([начальная_позиция]) – числовое значение, обозначающее позицию, с которой вы хотите начать поиск. Если не указать этот аргумент, то функци начнет поиск с начала текста.

    Дополнительная информация

    • Если стартовая позиция поиска не указана, то поиск текста осуществляется сначала текста;
    • Функция не чувствительна к регистру. Если вам нужна чувствительность к регистру, то используйте функцию НАЙТИ;
    • Функция может обрабатывать подстановочные знаки. В Excel существует три подстановочных знака – ?, *,

    .

    • знак “?” – сопоставляет любой одиночный символ;
    • знак “*” – сопоставляет любые дополнительные символы;
    • знак “

    ” – используется, если нужно найти сам вопросительный знак или звездочку.

  • Функция возвращает ошибку, в случае если искомый текст не найден.
  • Примеры использования функции ПОИСК в Excel

    Пример 1. Ищем слово внутри текстовой строки (с начала)

    На примере выше видно, что когда мы ищем слово “доброе” в тексте “Доброе утро”, функция возвращает значение “1”, что соответствует позиции слова “доброе” в тексте “Доброе утро”.

    Так как функция не чувствительна к регистру, нет разницы каким образом мы указываем искомое слово “доброе”, будь то “ДОБРОЕ”, “Доброе”, “дОброе” и.т.д. функция вернет одно и то же значение.

    Если вам необходимо осуществить поиск чувствительный к регистру – используйте функцию НАЙТИ в Excel.

    Пример 2. Ищем слово внутри текстовой строки (с указанием стартовой позиции поиска)

    Третий аргумент функции указывает на порядковый номер позиции внутри текста, с которой будет осуществлен поиск. На примере выше, функция возвращает значение “1” при поиске слова “доброе” в тексте “Доброе утро”, начиная свой поиск с первой позиции.

    Вместе с тем, если мы указываем функции, что поиск следует начинать со второго символа текста “Доброе утро”, то есть функция в этом случае видит текст как “оброе утро” и ищет слово “доброе”, то результатом будет ошибка.

    Если вы не указываете в качестве аргумента стартовую позицию для поиска, функция автоматически начнет поиск с начала текста.

    Пример 3. Поиск слова при наличии нескольких совпадений в тексте

    Функция начинает искать текст со стартовой позиции которую мы можем указать в качестве аргумента, или она начнет поиск с начала текста автоматически. На примере выше, мы ищем слово “доброе ” в тексте “Доброе доброе утро” со стартовой позицией для поиска “1”. В этом случае функция возвращает “1”, так как первое найденное слово “Доброе” начинается с первого символа текста.

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

    Пример 4. Используем подстановочные знаки при работе функции ПОИСК в Excel

    При поиске функция учитывает подстановочные знаки. На примере выше мы ищем текст “c*l”. Наличие подстановочного знака “*” в данном запросе обозначает что мы ищем любо слово, которое начинается с буквы “c” и заканчивается буквой “l”, а что между этими двумя буквами не важно. Как результат, функция возвращает значение “3”, так как в слове “Excel”, расположенном в ячейке А2 буква “c” находится на третьей позиции.

    Функция ПОИСК() в MS EXCEL

    Синтаксис функции

    ПОИСК(искомый_текст;просматриваемая_строка;[нач_позиция])

    Искомый_текст — текст, который требуется найти.

    Просматриваемая_строка — текст, в которой ищется Искомый_текст.

    Нач_позиция — позиция знака в просматриваемой_строке, с которой должен начинаться поиск. Если аргумент нач_позиция опущен, то предполагается значение 1.

    В аргументе искомый_текст можно использовать подстановочные знаки — вопросительный знак (?) и звездочку (*). Вопросительный знак соответствует любому знаку; звездочка — любой последовательности знаков. Если нужно найти в тексте вопросительный знак или звездочку, следует поставить перед ними тильду (

    Если искомый_текст не найден, возвращается значение ошибки #ЗНАЧ!

    Функция ПОИСК() не учитывает РЕгиСТР букв. Для поиска с учетом регистра следует воспользоваться функцией НАЙТИ() .

    Формула =ПОИСК(«к»;»Первый канал») вернет 8, т.к. буква к находится на 8-й позиции слева.

    Пусть в ячейке А2 введена строка Первый канал — лучший. Формула =ПОИСК(СИМВОЛ(32);A2) вернет 7, т.к. символ пробела (код 32) находится на 7-й позиции.

    Формула =ПОИСК(«#. #»;»Артикул #123# ID») будет искать в строке «Артикул #123# ID» последовательность из 5 символов, которая начинается и заканчивается на знак #.

    Чтобы найти позицию второго вхождения буквы «а» в строке «мама мыла раму» используйте формулу =ПОИСК(«а»;»мама мыла раму»;ПОИСК(«а»;»мама мыла раму»)+1). Чтобы определить есть ли третье вхождение буквы «м» в строке «мама мыла раму» используйте формулу =ЕСЛИ(ДЛСТР(ПОДСТАВИТЬ(«мама мыла раму»;»м»;»»;3))=ДЛСТР(«мама мыла раму»);»Нет третьего вхождения м»;»Есть третье вхождение м»)

    Формула =ПОИСК(«клад?»;»докладная») вернет 3, т.е. в слове «докладная» содержится слово из 5 букв, первые 4 из которых клад (начиная с третьей буквы слова докладная).

    Функция НАЙТИ() vs ПОИСК()

    Функция НАЙТИ() учитывает РЕгиСТР букв и не допускает использование подстановочных знаков. Для поиска без учета регистра, а также для поиска с использованием подстановочных знаков пользуйтесь функцией ПОИСК() .

    Связь с функциями ЛЕВСИМВ() , ПРАВСИМВ() и ПСТР()

    Функция ПОИСК() может быть использована совместно с функциями ЛЕВСИМВ() , ПРАВСИМВ() и ПСТР() .

    Например, в ячейке А2 содержится фамилия и имя «Иванов Иван», то формула =ЛЕВСИМВ(A2;ПОИСК(СИМВОЛ(32);A2)-1) извлечет фамилию, а =ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(СИМВОЛ(32);A2)) — имя. Если между именем и фамилией содержится более одного пробела, то для работоспособности вышеупомянутых формул используйте функцию СЖПРОБЕЛЫ() .

    Поиск значения в столбце и строке таблицы Excel

    Имеем таблицу, в которой записаны объемы продаж определенных товаров в разных месяцах. Необходимо в таблице найти данные, а критерием поиска будут заголовки строк и столбцов. Но поиск должен быть выполнен отдельно по диапазону строки или столбца. То есть будет использоваться только один из критериев. Поэтому здесь нельзя применить функцию ИНДЕКС, а нужна специальная формула.

    Поиск значений в таблице Excel

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

    Лист с таблицей для поиска значений по вертикали и горизонтали:

    Над самой таблицей расположена строка с результатами. В ячейку B1 водим критерий для поискового запроса, то есть заголовок столбца или название строки. А в ячейке D1 формула поиска должна возвращать результат вычисления соответствующего значения. После чего в ячейке F1 сработает вторая формула, которая уже будет использовать значения ячеек B1 и D1 в качестве критериев для поиска соответствующего месяца.

    Поиск значения в строке Excel

    Теперь узнаем, в каком максимальном объеме и в каком месяце была максимальная продажа Товара 4.

    Чтобы выполнить поиск по столбцам следует:

    1. В ячейку B1 введите значение Товара 4 – название строки, которое выступит в качестве критерия.
    2. В ячейку D1 введите следующую формулу:
    3. Для подтверждения после ввода формулы нажмите комбинацию горячих клавиш CTRL+SHIFT+Enter, так как формула должна быть выполнена в массиве. Если все сделано правильно, в строке формул появятся фигурные скобки.
    4. В ячейку F1 введите вторую формулу:
    5. Снова Для подтверждения нажмите комбинацию клавиш CTRL+SHIFT+Enter.

    Найдено в каком месяце и какая была наибольшая продажа Товара 4 на протяжении двух кварталов.

    Принцип действия формулы поиска значения в строке Excel:

    В первом аргументе функции ВПР (Вертикальный ПРосмотр) указывается ссылка на ячейку где находится критерий поиска. Во втором аргументе указывается диапазон ячеек для просмотра в процессе поиска. В третьем аргументе функции ВПР должен указываться номер столбца, из которого следует взять значение на против строки с именем Товар 4. Но так как нам заранее не известен этот номер мы с помощью функции СТОЛБЕЦ создаем массив номеров столбцов для диапазона B4:G15.

    Это позволяет функции ВПР собрать целый массив значений. В результате в памяти хранится все соответствующие значения каждому столбцу по строке Товар 4 (а именно: 360; 958; 201; 605; 462; 832). После чего функции МАКС остается только взять из этого массива максимальное число и возвратить в качестве значения для ячейки D1, как результат вычисления формулы.

    Как видно конструкция формулы проста и лаконична. На ее основе можно в похожий способ находить для определенного товара и другие показатели. Например, минимальное или среднее значение объема продаж используя для этого функции МИН или СРЗНАЧ. Вам ни что не препятствует, чтобы приведенный этот скелет формулы применить с использованием более сложных функций для реализации максимально комфортного анализа отчета по продажам.

    Как получить заголовки столбцов по зачиню одной ячейки?

    Например, как эффектно мы отобразили месяц, в котором была максимальная продажа, с помощью второй формулы. Не сложно заметить что во второй формуле мы использовали скелет первой формулы без функции МАКС. Главная структура формулы: ВПР(B1;A5:G14;СТОЛБЕЦ(B5:G14);0). Мы заменили функцию МАКС на ПОИСКПОЗ, которая в первом аргументе использует значение, полученное предыдущей формулой. Оно теперь выступает в качестве критерия для поиска месяца. И в результате функция ПОИСКПОЗ нам возвращает номер столбца 2 где находится максимальное значение объема продаж для товара 4. После чего в работу включается функция ИНДЕКС, которая возвращает значение по номеру сроки и столбца из определенного в ее аргументах диапазона. Так как у нас есть номер столбца 2, а номер строки в диапазоне где хранятся названия месяцев в любые случаи будет 1. Тогда нам осталось функцией ИНДЕКС получить соответственное значение из диапазона B4:G4 – Февраль (второй месяц).

    Поиск значения в столбце Excel

    Вторым вариантом задачи будет поиск по таблице с использованием названия месяца в качестве критерия. В такие случаи мы должны изменить скелет нашей формулы: функцию ВПР заменить ГПР, а функция СТОЛБЕЦ заменяется на СТРОКА.

    Это позволит нам узнать какой объем и какого товара была максимальная продажа в определенный месяц.

    Чтобы найти какой товар обладал максимальным объемом продаж в определенном месяце следует:

    1. В ячейку B2 введите название месяца Июнь – это значение будет использовано в качестве поискового критерия.
    2. В ячейку D2 введите формулу:
    3. Для подтверждения после ввода формулы нажмите комбинацию клавиш CTRL+SHIFT+Enter, так как формула будет выполнена в массиве. А в строке формул появятся фигурные скобки.
    4. В ячейку F1 введите вторую формулу:
    5. Снова Для подтверждения нажмите CTRL+SHIFT+Enter.

    Принцип действия формулы поиска значения в столбце Excel:

    В первом аргументе функции ГПР (Горизонтальный ПРосмотр) указываем ссылку на ячейку с критерием для поиска. Во втором аргументе указана ссылка на просматриваемый диапазон таблицы. Третий аргумент генерирует функция СТРОКА, которая создает в памяти массив номеров строк из 10 элементов. Так как в табличной части у нас находится 10 строк.

    Далее функция ГПР поочередно используя каждый номер строки создает массив соответственных значений продаж из таблицы по определенному месяцу (Июню). Далее функции МАКС осталось только выбрать максимальное значение из этого массива.

    Далее немного изменив первую формулу с помощью функций ИНДЕКС и ПОИСКПОЗ, мы создали вторую для вывода названия строк таблицы по зачиню ячейки. Название соответствующих строк (товаров) выводим в F2.

    ВНИМАНИЕ! При использовании скелета формулы для других задач всегда обращайте внимание на второй и третий аргумент поисковой функции ГПР. Количество охваченных строк в диапазоне указанного в аргументе, должно совпадать с количеством строк в таблице. А также нумерация должна начинаться со второй строки!

    По сути содержимое диапазона нас вообще не интересует, нам нужен просто счетчик строк. То есть изменить аргументы на: СТРОКА(B2:B11) или СТРОКА(С2:С11) – это никак не повлияет на качество формулы. Главное, что в этих диапазонах по 10 строк, как и в таблице. И нумерация начинается со второй строки!

    ПОИСК, ПОИСКБ (функции ПОИСК, ПОИСКБ)

    Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

    В этой статье описаны синтаксис формулы и использование функций ПОИСК и ПОИСКБ в Microsoft Excel.

    Функции ПОИСК И ПОИСКБ находят одну текстовую строку в другой и возвращают начальную позицию первой текстовой строки (считая от первого символа второй текстовой строки). Например, чтобы найти позицию буквы «n» в слове «printer», можно использовать следующую функцию:

    Эта функция возвращает 4, так как «н» является четвертым символом в слове «принтер».

    Можно также находить слова в других словах. Например, функция

    возвращает 5, так как слово «base» начинается с пятого символа слова «database». Можно использовать функции ПОИСК и ПОИСКБ для определения положения символа или текстовой строки в другой текстовой строке, а затем вернуть текст с помощью функций ПСТР и ПСТРБ или заменить его с помощью функций ЗАМЕНИТЬ и ЗАМЕНИТЬБ. Эти функции показаны в примере 1 данной статьи.

    Эти функции могут быть доступны не на всех языках.

    Функция ПОИСКБ отсчитывает по два байта на каждый символ, только если языком по умолчанию является язык с поддержкой БДЦС. В противном случае функция ПОИСКБ работает так же, как функция ПОИСК, и отсчитывает по одному байту на каждый символ.

    К языкам, поддерживающим БДЦС, относятся японский, китайский (упрощенное письмо), китайский (традиционное письмо) и корейский.

    Аргументы функций ПОИСК и ПОИСКБ описаны ниже.

    Искомый_текст Обязательный. Текст, который требуется найти.

    Просматриваемый_текст Обязательный. Текст, в котором нужно найти значение аргумента искомый_текст.

    Начальная_позиция Необязательный. Номер знака в аргументе просматриваемый_текст, с которого следует начать поиск.

    Функции ПОИСК и ПОИСКБ не учитывают регистр. Если требуется учитывать регистр, используйте функции НАЙТИ и НАЙТИБ.

    В аргументе искомый_текст можно использовать подстановочные знаки: вопросительный знак (?) и звездочку (*). Вопросительный знак соответствует любому знаку, звездочка — любой последовательности знаков. Если требуется найти вопросительный знак или звездочку, введите перед ним тильду (

    Если значение аргумента искомый_текст не найдено, #VALUE! возвращено значение ошибки.

    Если аргумент начальная_позиция опущен, то он полагается равным 1.

    Если Нач_позиция не больше 0 или больше, чем длина аргумента просматриваемый_текст , #VALUE! возвращено значение ошибки.

    Аргумент начальная_позиция можно использовать, чтобы пропустить определенное количество знаков. Допустим, что функцию ПОИСК нужно использовать для работы с текстовой строкой «МДС0093.МужскаяОдежда». Чтобы найти первое вхождение «М» в описательной части текстовой строки, задайте для аргумента начальная_позиция значение 8, чтобы поиск не выполнялся в той части текста, которая является серийным номером (в данном случае — «МДС0093»). Функция ПОИСК начинает поиск с восьмого символа, находит знак, указанный в аргументе искомый_текст, в следующей позиции, и возвращает число 9. Функция ПОИСК всегда возвращает номер знака, считая от начала просматриваемого текста, включая символы, которые пропускаются, если значение аргумента начальная_позиция больше 1.

    Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

    Строка поиска в Excel

    Этот пример научит вас создавать собственную строку поиска в Excel.

    Вот так выглядит таблица. Если ввести поисковый запрос в ячейку B2, Excel найдет совпадения в столбце E и выдаст результат в столбце B.

    Чтобы создать эту строку поиска, следуйте инструкции ниже:

      Выделите ячейку D4 и вставьте функцию SEARCH (ПОИСК), как показано ниже, указав абсолютную ссылку на ячейку В2.

    =SEARCH($B$2,E4)
    =ПОИСК($B$2;E4)

  • Дважды кликните по маркеру автозаполнения, который находится в правом нижнем углу ячейки D4, чтобы быстро скопировать формулу во все оставшиеся ячейки столбца D.Объяснение: Функция SEARCH (ПОИСК) ищет начальную позицию искомого значения в строке. Функция SEARCH (ПОИСК) не учитывает регистр. В слове “Tunisia” строка “uni” имеет начальное положение 2, а в слове “United States” начальное положение равно 1. Чем меньше значение, тем выше оно должно располагаться.
  • И “United States”, и “United Kingdom” возвращают значение 1. Как быть? Чуть позже мы присвоим всем данным уникальные значения с помощью функции RANK (РАНГ), но для этого нам нужно слегка скорректировать результат формулы в ячейке D4, как показано ниже:

    IFERROR(SEARCH($B$2,E4)+ROW()/100000,»»)
    ЕСЛИОШИБКА(ПОИСК($B$2;E4)+СТРОКА()/100000;»»)

  • Снова дважды кликните по правому нижнему углу ячейки D4, чтобы быстро скопировать формулу в остальные ячейки столбца.Объяснение: Функция ROW (СТРОКА) возвращает номер строки ячейки. Если мы разделим номер строки на крупное число и прибавим это значение к результату функции SEARCH (ПОИСК), у нас всегда будут получаться уникальные значения, а небольшой прирост не повлияет на ранжирование. Теперь значение для “United States” составляет 1,00006, а для “United Kingdom” – 1,00009. Кроме этого мы добавили функцию IFERROR (ЕСЛИОШИБКА). Если ячейка содержит ошибку, к примеру, когда строка не может быть найдена, возвращается пустая строка (“”).
  • Выберите ячейку C4 и вставьте функцию RANK (РАНГ), как показано ниже:

    =IFERROR(RANK(D4,$D$4:$D$197,1),»»)
    =ЕСЛИОШИБКА(РАНГ(D4;$D$4:$D$197;1);»»)

  • Дважды щелкните по правому углу ячейки С4, чтобы быстро скопировать формулу в другие ячейки.Объяснение: Функция RANK (РАНГ) возвращает порядковый номер значения. Если третий аргумент функции равен 1, Excel выстраивает числа по возрастанию: от наименьшего к большему. Поскольку мы добавили функцию ROW (СТРОКА), все значения в столбце D стали уникальными. Как следствие, числа в столбце C тоже уникальны.
  • Мы почти закончили. Функцию VLOOKUP (ВПР) мы будем использовать, чтобы извлечь найденные страны (наименьшее значение первым, второе наименьшее вторым, и т.д.) Выделите ячейку B4 и вставьте функцию VLOOKUP (ВПР), как показано ниже.

    =IFERROR(VLOOKUP(A4,$C$4:$E$197,3,FALSE),»»)
    =ЕСЛИОШИБКА(ВПР(A4;$C$4:$E$197;3;ЛОЖЬ);»»)

  • Дважды щелкните по правому нижнему углу ячейки B4, чтобы быстро скопировать формулу в другие ячейки.
  • Измените цвет чисел в столбце А на белый и скройте столбцыС и D.
  • Результат: Ваша собственная строка поиска в Excel.

    Функция ПОИСК находит одну текстовую строку в другой и возвращает начальную позицию первой текстовой строки.

    Описание функции ПОИСК

    Функции ПОИСК И ПОИСКБ находят одну текстовую строку в другой и возвращают начальную позицию первой текстовой строки (считая от первого символа второй текстовой строки).

    Например, чтобы найти позицию буквы «n» в слове «printer», можно использовать следующую функцию:

    =ПОИСК("н","принтер")

    Эта функция возвращает 4, так как «н» является четвертым символом в слове «принтер».

    Можно также находить слова в других словах. Например, функция:

    =ПОИСК("base","database")

    возвращает 5, так как слово «base» начинается с пятого символа слова «database».

    Синтаксис

    =ПОИСК(искомый_текст,просматриваемый_текст,[начальная_позиция])

    Аргументы

    искомый_текстпросматриваемый_текстначальная_позиция

    Обязательный. Текст, который требуется найти.

    Обязательный. Текст, в котором нужно найти значение аргумента искомый_текст.

    Необязательный. Номер знака в аргументе просматриваемый_текст, с которого следует начать поиск.

    Замечания

    • Функции ПОИСК и ПОИСКБ не учитывают регистр. Если требуется учитывать регистр, используйте функции НАЙТИ и НАЙТИБ.
    • В аргументе искомый_текст можно использовать подстановочные знаки: вопросительный знак (?) и звездочку (*). Вопросительный знак соответствует любому знаку, звездочка — любой последовательности знаков. Если требуется найти вопросительный знак или звездочку, введите перед ним тильду (~).
    • Если искомый_текст не найден, возвращается значение ошибки #ЗНАЧ!.
    • Если аргумент начальная_позиция опущен, то он полагается равным 1.
    • Если аргумент начальная_позиция не больше 0 или больше, чем длина просматриваемого текста, возвращается значение ошибки #ЗНАЧ!.
    • Аргумент начальная_позиция можно использовать, чтобы пропустить определенное количество знаков. Допустим, что функцию ПОИСК нужно использовать для работы с текстовой строкой «МДС0093.МужскаяОдежда». Чтобы найти первое вхождение «М» в описательной части текстовой строки, задайте для аргумента начальная_позиция значение 8, чтобы поиск не выполнялся в той части текста, которая является серийным номером (в данном случае — «МДС0093»). Функция ПОИСК начинает поиск с восьмого символа, находит знак, указанный в аргументе искомый_текст, в следующей позиции, и возвращает число 9. Функция ПОИСК всегда возвращает номер знака, считая от начала просматриваемого текста, включая символы, которые пропускаются, если значение аргумента начальная_позиция больше 1.

    Пример

    Видео работы функции

    Разделение строки в Excel

    Дополнительные материалы

    Разделение текста в ячейке с помощью функций ПСТР и ПОИСК.

    Понравилась статья? Поделить с друзьями:
  • Функция отобразить все знаки в приложении ms word 20072010 расположена на вкладке
  • Функция плюс минус в excel
  • Функция плт в excel что это
  • Функция отображения строки в excel
  • Функция плт в excel примеры