Как найти символ в excel формула

НАЙТИ, НАЙТИБ (функции НАЙТИ, НАЙТИБ)

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

В этой статье описаны синтаксис формулы и использование функций НАЙТИ и НАЙТИБ в Microsoft Excel.

Описание

Функции НАЙТИ и НАЙТИБ находят вхождение одной текстовой строки в другую и возвращают начальную позицию искомой строки относительно первого знака второй строки.

Важно: 

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

  • Функция НАЙТИ предназначена для языков с однобайтовой кодировкой, а функция НАЙТИБ — для языков с двухбайтовой кодировкой. Заданный на компьютере язык по умолчанию влияет на возвращаемое значение указанным ниже образом.

  • Функция НАЙТИ при подсчете всегда рассматривает каждый знак, как однобайтовый, так и двухбайтовый, как один знак, независимо от выбранного по умолчанию языка.

  • Функция НАЙТИБ при подсчете рассматривает каждый двухбайтовый знак как два знака, если включена поддержка языка с БДЦС и такой язык установлен по умолчанию. В противном случае функция НАЙТИБ рассматривает каждый знак как один знак.

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

Синтаксис

НАЙТИ(искомый_текст;просматриваемый_текст;[нач_позиция])

НАЙТИБ(искомый_текст;просматриваемый_текст;[нач_позиция])

Аргументы функций НАЙТИ и НАЙТИБ описаны ниже.

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

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

  • Начальная_позиция    — необязательный аргумент. Знак, с которого нужно начать поиск. Первый знак в тексте «просматриваемый_текст» имеет номер 1. Если номер опущен, он полагается равным 1.

Замечания

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

  • Если в качестве аргумента «искомый_текст» задана пустая строка («»), функция НАЙТИ выводит значение, равное первому знаку в строке поиска (знак с номером, соответствующим аргументу «нач_позиция» или 1).

  • Искомый_текст не может содержать подстановочные знаки.

  • Если find_text не отображаются в within_text, find и FINDB возвращают #VALUE! значение ошибки #ЗНАЧ!.

  • Если start_num не больше нуля, то найти и найтиБ возвращает значение #VALUE! значение ошибки #ЗНАЧ!.

  • Если start_num больше, чем длина within_text, то поиск и НАЙТИБ возвращают #VALUE! значение ошибки #ЗНАЧ!.

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

Примеры

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

Данные

Владимир Егоров

Формула

Описание

Результат

=НАЙТИ(«В»;A2)

Позиция первой «В» в ячейке A2

1

=НАЙТИ(«в»;A2)

Позиция первой «в» в ячейке A2

6

=НАЙТИ(«и»;A2;3)

Позиция первой «и» в строке А2, начиная с третьего знака

8

Пример 2

Данные

Керамический изолятор №124-ТД45-87

Медная пружина №12-671-6772

Переменный резистор №116010

Формула

Описание (результат)

Результат

=ПСТР(A2;1;НАЙТИ(» №»;A2;1)-1)

Выделяет текст от позиции 1 до знака «№» в строке («Керамический изолятор»)

Керамический изолятор

=ПСТР(A3;1;НАЙТИ(» №»;A3;1)-1)

Выделяет текст от позиции 1 до знака «№» в ячейке А3 («Медная пружина»)

Медная пружина

=ПСТР(A4;1;НАЙТИ(» №»;A4;1)-1)

Выделяет текст от позиции 1 до знака «№» в ячейке А4 («Переменный резистор»)

Переменный резистор

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

Функции ЛЕВСИМВ, ПРАВСИМВ и ПСТР прекрасно применяются для разделения строк на слова или фрагменты текстов, но при условии, что вам заранее известны позиции символов с которых будет разделение. Что же делать если заранее вам не известно где в текстовой строке находится тот символ, начиная с которого нужно вырезать фрагмент текста?

Пример формулы НАЙТИ, ДЛСТР и ПРАВСИМВ в Excel

Допустим у нас имеется прайс-лист с кодами товаров, как получить часть символов после дефиса с каждого кода, если дефис каждый раз находиться на новой позиции символов?

  • PTR-422
  • CORPO-6755
  • SVCCALL-56532

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

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

Для реализации данной задачи следует использовать формулу с комбинацией функций ПРАВСИМВ, ДЛСТР и НАЙТИ:

ПРАВСИМВ.

Благодаря функции НАЙТИ можно автоматически определять позицию в текстовой строке для указанного символа в ее аргументах. А после использовать номер позиции в следующих операциях, например, при автоматической генерации значений для второго аргумента функции ПРАВСИМВ. Реализуется генерация путем определения необходимого числа при вычитании от длины строки, которую возвращает функция ДЛСТР номера позиции символа – «-».



Пример использования НАЙТИ и ПСТР в формуле Excel

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

ПСТР.

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

Функция НАЙТИ требует заполнить минимум 2 из 3-х аргументов:

аргументы функции выборки средних чисел в тексте.

  1. Искомый_текст – здесь необходимо указать текст, который следует найти и получить его порядковый номер (позицию) в исходной текстовой строке.
  2. Просматриваемый_текст – тут указываем ссылку на ячейку с исходной строкой, которая содержит искомый символ или текст.
  3. Нач_позиция – это не обязательный аргумент. Здесь можно указать номер позиции символа в строке, с которого следует начинать поиск. Если строка содержит более одного найденного искомого символа, то с помощью данного необязательного аргумента можно указать номер символа с которого будет просматриваться остальная часть строки. Если он не указан в этом аргументе, то по умолчанию он равен = 1, то есть с первого, а значит целая строка.

На пример, в примере функция находит первый дефис в строке «PWR-16-Small». В результате своего вычисления она по умолчанию возвращает число 4. Так как первый дефис в и сходной строке находится на четвертой позиции.

Динамические формулы с использованием функции НАЙТИ

Но если мы воспользуемся третьим необязательным аргументом и укажем в нем число 5. То есть просматривать первую не целиком, а начиная после первого дефиса, четвертого символа. Тогда функция будет возвращать нам порядковую позицию второго «-», то есть число – 7.

3 аргумент.

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

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

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

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

НАЙТИ НАЙТИ.

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

Пример из практического опыта офисного сотрудника. Необходимо получить часть кода товаров, которая начинается от второго дефиса. Для этого создаем динамическую формулу:

Пример функции ПРАВСИМВ НАЙТИ ДЛСТР.

Здесь мы использовали автоматический поиск первого дефиса. Номер позиции послужил третьим необязательным опциональным аргументом функции НАЙТИ для автоматического поиска каждого второго дефиса в каждом коде товара. Далее используя функцию ДЛСТР, мы определяем длину исходной строки и вычитаем от нее число позиции второго символа. Другими словами, от длины кода вычитаем количество символов до второго дефиса (включительно с ним, о чем свидетельствует сложение +1). Таким образом мы динамически определяем второй аргумент для функции ПРАВСИМВ чтобы вырезать разной величины фрагмент текста из строк. К том уже все строки с разной длиной, да еще и в разном месте находится второй дефис. Но умная формула справилась полностью в автоматическом режиме.

Пользователи Excel, несмотря на то, что поиск нужного символа кажется довольно простой задачей, часто не понимают, как сделать это. С некоторыми из них проще, с частью – сложнее. Также иногда появляются проблемы с поиском таких символов, как знак вопроса или звездочка из-за того, что они используются в фильтрах. Сегодня мы опишем способы доставать символы самых разных типов.

Содержание

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

Как найти в ячейке текстовые символы (буквы и цифры)

Для начала попробуем выполнить самую простую задачу: определить наличие текстовых символов в ячейки и найти тот, который надо. Для этого нужно воспользоваться дополнением !SEMTools, с помощью которого можно искать символы разных типов. Последовательность действий следующая:

  1. Выделяем тот диапазон, который является изначальным и копируем его в соседнюю колонку.
  2. Затем выделяем второй диапазон.
  3. Открываем вкладку «!SEMTools». Там в самой левой части панели инструментов будет вкладка «Обнаружить».
  4. После этого открываем меню «Символы».
  5. Затем появится дополнительное меню, в котором надо найти пункт «Буквы-цифры» и нажать на него.

Поиск символа в строке таблицы Excel

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

Как найти в ячейке таблицы цифры

Иногда нужно определить ячейки, в которой есть цифры, но они находятся вместе с текстом. Когда таких ячеек становится очень много, может быть довольно нелегко определить их. Перед тем, как реализовывать эту задачу, нужно определиться с некоторыми базовыми терминами. Главное наше понятие – «обнаружить». Это означает – проверить, есть ли определенный тип символа в строке. Если да, возвращается значение «ИСТИНА», если нет «ЛОЖЬ». Если же кроме поиска цифр в ячейке пользователь хочет произвести иные действия, то можно воспользоваться дальнейшими разделами этой инструкции.

Второе понятие, которое нужно разобрать – цифры. Это интегральный термин, который обозначает аж 10 символов, которые соответствуют числам от 0 до 9. Соответственно, чтобы проверить наличие чисел, пользователю нужно 10 раз проверить диапазон. Это можно сделать с помощью функции ЕСЛИ, но такой подход требует очень много времени.

Чтобы решить эту проблему, можно воспользоваться специальной формулой, которая выполнит все проверки за один раз: =СЧЁТ(ПОИСК({1:2:3:4:5:6:7:8:9:0};A1))>0. Эта функция имеет тот же синтаксис, что и та, которая ищет кириллические символы в тексте.

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

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

Поиск символа в строке таблицы Excel

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

Также можно воспользоваться формулой для того, чтобы отыскать в диапазоне ячеек необходимые цифры. Для этого надо применять комбинацию функций СЧЕТ и ПОИСК. С ее помощью можно обнаружить не только отдельные цифры, но и целые числовые последовательности: =СЧЁТ(ПОИСК({01:02:03:911:112};A1))>0.

Иногда надо найти числа, отделенные пробелами. В этом случае они называются словами-числами. Чтобы их найти, необходимо также воспользоваться соответствующими инструментами !SEMTools. На этой анимации наглядно показано, какие действия нужно выполнить, чтобы это сделать.

Поиск символа в строке таблицы Excel

Как узнать, что ячейка Эксель содержит латиницу

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

Что же нужно делать для того, чтобы обнаружить латиницу? Например, можно воспользоваться специальными шрифтами, которые дадут возможность определить английские символы на глаз. Например, это делает шрифт Dubai Medium, который делает английские символы жирными.

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

Использование специальной функции

Основная проблема поиска латинских букв, что их в два с половиной раза больше, чем цифр. Следовательно, нужно задавать программе цикл, состоящий из 26 итераций, что может быть довольно напряжно. Но если использовать формулу массива, состоящую из приведенных выше функций СЧЕТ и ПОИСК, то эта затея уже и не кажется настолько сложной: =СЧЁТ(ПОИСК({«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 – это та ячейка, в которой осуществляется проверка. Соответственно, вам нужно поставить ту, которая подходит в вашей ситуации. В результате проверки с помощью этой функции возвращается логическое значение. Если совпадения обнаруживаются, то оператор возвращает ИСТИНА, если их нет – ЛОЖЬ.

Функция ПОИСК не дает возможности учитывать регистр при поиске символов. Чтобы это сделать, надо воспользоваться оператором НАЙТИ, который выполняет те же операции, имеет такие же самые аргументы, только уже учитывает регистр. Еще один способ – сделать описанную выше формулу формулой массива. В таком случае она будет иметь следующий вид:{=СЧЁТ(ПОИСК(СИМВОЛ(СТРОКА(65:90));A1))>0}.

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

Если же нужно найти кириллицу, последовательность действий аналогичная, только в качестве диапазона поиска нужно задавать всю последовательность кириллических символов. =СЧЁТ(ПОИСК({«а»:»б»:»в»:»г»:»д»:»е»:»ё»:»ж»:»з»:»и»:»й»:»к»:»л»:»м»:»н»:»о»:»п»:»р»:»с»:»т»:»у»:»ф»:»х»:»ц»:»ч»:»ш»:»щ»:»ъ»:»ы»:»ь»:»э»:»ю»:»я»};A1))>0. Также можно юзать функцию СИМВОЛ, чтобы сделать это. {=СЧЁТ(ПОИСК(СИМВОЛ(СТРОКА(192:223));A1))>0}

Эта формула должна записываться так, как формула массива. Следовательно, нужно нажать комбинацию клавиш Ctrl + Shift + Enter вместо простого нажатия клавиши ввода. Но есть некоторые исключения, при которых эта функция не будет работать. Нужно предварительно убедиться в том, что язык по умолчанию для программ не в кодировке Unicode стоит русский. В этом случае проблем возникнуть не должно. Эти формулы имеют некоторые отличия между собой. Вместо 33 букв последняя формула применяет только 32. То есть, она не учитывает букву ё, как кириллическую.

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

Как найти слова в ячейке, которые содержат кириллицу и латиницу

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

Как найти в ячейке заглавные буквы

Чтобы найти заглавные буквы, необходимо воспользоваться функцией НАЙТИ, а в качестве аргументов указать заглавные кириллические буквы (или элементы латинского алфавита, если нужно найти их) или же их коды.

При поиске кириллических букв через коды нужно помнить о том, что предварительно таблица ASCII должна быть настроена на русский язык. Простыми словами, чтобы стояла русская локализация.

Если же нужно найти какие-угодно заглавные буквы, независимо от алфавита, в котором их надо искать, нужно использовать функции СТРОЧН и СОВПАД. Последовательность действий следующая:

  1. Делаем нижний регистр значений в отдельной ячейке.
  2. Сравниваем результаты с первоначальными.
  3. После этого используем следующую формулу: =НЕ(СОВПАД(СТРОЧН(A1);A1))

Если эти ячейки не совпадают, это говорит о том, что какой-то из символов в изначальной ячейке был в верхнем регистре.

Поиск символов в Excel при помощи регулярных выражений

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

Приятная новость: эти функции можно использовать как в Гугл таблицах, так и в Excel с этой настройкой.

Первая регулярная функция – REGEXMATCH, которая умеет проверять, похож ли этот паттерн на тот, который был в другой ячейке. Синтаксис: =REGEXMATCH(«текст»;»RegEx-паттерн для поиска»). Эта функция возвращает одно из двух значений: истинное или ложное. Что именно – зависит от того, действительно ли наблюдается соответствие или нет. Вторая функция – =REGEXEXTRACT(«текст»;»RegEx-паттерн для поиска») Она позволяет извлечь нужные символы из строки.

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

Ну и наконец, нужно воспользоваться этой формулой для того, чтобы заменить текст: =REGEXREPLACE(«текст»;»RegEx-паттерн для поиска»;»текст, которым заменяем найденное»).

Что делать с найденными символами

Хорошо. Предположим, мы нашли символы. А что с ними можно делать дальше? Здесь есть несколько возможных вариантов, как можно поступить. Например, можно их удалить. Например, если мы среди кириллических значений нашли латиницу. Также можно заменить ее на аналогичный символ, только в кириллице (например, большую английскую М на русскую М) или же извлечь этот символ для использования в другой формуле.

Удаление лишних символов в Excel

Существует множество способов, как убрать ненужные знаки в Excel. Как один из вариантов – использование функции «Найти и заменить», где заменить тот символ, который нужно убрать, на пустую строку “». Можно воспользоваться теми же регулярными выражениями, которые используются для замены найденного символа.

Извлечение определенных символов в Excel

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

Изменение символов в Excel

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

Оцените качество статьи. Нам важно ваше мнение:

  • Что делает функция ПОИСК?
  • Синтаксис
  • Форматирование
  • Поиск символа в ячейке
  • Извлечь первое слово
  • Другие примеры использования
  • Функция ПОИСК в формуле массива
Функция поиск - таблица с примерами
Функция ПОИСК в 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 поможет решить множество задач без ввода сложных формул и сэкономит ваше время. И вам полезно, и автору приятно!

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

​Смотрите также​ текстом имеет адрес​ ячейка, в которой​ а обработчик php​ быть указана, как​ улиц будут найдены​(ЕСЛИОШИБКА) появилась в​

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

​ поиск начнётся с​​ Мы также разберем,​

​ найти, и позволяет​​нажмите кнопку​ можно оперативнее обеспечивать​

​=ИНДЕКС(Список;НАИМЕНЬШИЙ(​​ т.е. 5 букв).​Найдем все названия инструментов,​​ использована совместно с​​ 8-й позиции слева.​

​Функция ПОИСК(), английский вариант​​ «А2» и в​ находится произвольный текст.​ этот символ​ значение аргумента​​ фразы CENTRAL, CENTER​​ Excel, начиная с​ первого символа.​

​ как справиться с​​ сделать активной ячейки,​​Найти и выделить​ вас актуальными справочными​ЕСЛИОШИБКА(ЕСЛИ(ПОИСК($G$2;Список);СТРОКА(Список)-СТРОКА($A$4);НД());»»);​ Критерию также будут​ которые​ функциями ЛЕВСИМВ(), ПРАВСИМВ()​Пусть в ячейке​ SEARCH(), находит первое​ данной ячейке следующий​В тексте ячейки​ не любит.​start_num​

​ и CENTRE.​ версии 2007. В​Функция​

​ теми ситуациями, когда​ выбрав нужное вхождение.​и нажмите кнопку​ материалами на вашем​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список))))​

Примеры

​ соответствовать такие несуразные​начинаются​ и ПСТР().​А2​

​ вхождение одной текстовой​​ текст «аб. Абвгд»:​​ постоянно меняются первые​RAN​(нач_позиция) в «главной»​=ISNUMBER(SEARCH($E$2,B3))​ более ранних версиях​SEARCH​ эта функция выдаёт​

​ Можно сортировать результаты​Найти​ языке. Эта страница​)​ значения как дрел5,​с фразы дрел​Например, в ячейке​

​введена строка Первый​ строки в другой​200?’200px’:»+(this.scrollHeight+5)+’px’);»>​ 1-3 символа, например:​: Так вы что,​ функции​=ЕЧИСЛО(ПОИСК($E$2;B3))​ тот же результат​(ПОИСК) возвратит позицию​ ошибку.​Найти​.​ переведена автоматически, поэтому​Часть формулы ПОИСК($G$2;Список) определяет:​ дрелМ и т.п.​

​ и​А2​ канал — лучший.​ строке и возвращает​xcell = Range(«A2»).Value​ а. 1111111, аб.​ каждый день сюда​SEARCH​

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

​Если мы запишем два​ можно было получить,​ первой совпадающей строки,​Итак, давайте рассмотрим внимательно​все, щелкнув заголовок.​В поле​ ее текст может​содержит​ (если они содержатся​

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

​длина строки​содержится фамилия и​ Формула =ПОИСК(СИМВОЛ(32);A2) вернет​ начальную позицию найденной​

​xcellpart = Left(xcell,4)​​ 1111111, абв. 1111111.​​ новый файл выкладывать​(ПОИСК). В результате​ знака минус (двойное​ используя​ не зависимо от​ теорию и практические​Примечание:​Найти​ содержать неточности и​ли значение из​ в списке).​

excel2.ru

Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть2. Подстановочные знаки

​которых составляет 5​ имя «Иванов Иван»,​ 7, т.к. символ​ строки.​То есть, методом​Каким образом можно​ будете, чтобы мы​ названия городов будут​ отрицание) перед функцией​IF​ регистра. Если Вам​ примеры по функции​ Чтобы прекратить процесс поиска,​введите текст —​

​ грамматические ошибки. Для​ диапазона​Критерий вводится в ячейку​​ символов.​​ то формула =ЛЕВСИМВ(A2;ПОИСК(СИМВОЛ(32);A2)-1)​

Задача

​ пробела (код 32)​ПОИСКискомый_текстпросматриваемая_строка​ Left взять 4​ проверить ячейку на​ вам меняли?​ проигнорированы поиском.​ISNUMBER​

А. Найти значения, которые начинаются с критерия и содержат определенное количество символов

​(ЕСЛИ) вместе с​ нужен поиск с​SEARCH​​ нажмите клавишу ESC.​​ или номера —,​

​ нас важно, чтобы​A5:A13​E2​

​Критерий будет вводиться в​ извлечет фамилию, а​​ находится на 7-й​​;[нач_позиция])​ первые символа ячейки​​ наличие в первые​​ShAM​Теперь проверенная и исправленная​

​(ЕЧИСЛО), то она​ISERROR​​ учётом регистра, Вы​​(ПОИСК). Если у​Для выполнения этой задачи​ вам нужно найти.​

​ эта статья была​фразу «?дрел?». Критерию​и выглядит так:​ ячейку​ =ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(СИМВОЛ(32);A2)) — имя.​ позиции.​Искомый_текст​ и уже их​ 4 символах содержимого​: Андрей, убил. Пойду,​

​ формула будет считать​ возвратит значения​(ЕОШИБКА).​
​ можете использовать функцию​
​ Вас припрятаны какие-то​
​ используется функция​
​ Или выберите из​

​ вам полезна. Просим​​ также будут соответствовать​​ «дрел??». В этом​С2​​ Если между именем​​Формула =ПОИСК(«#???#»;»Артикул #123# ID»)​
​  — текст, который требуется​ передав в переменную​​ ячейки (в том​​ отдышусь.​​ только те строки,​​1​

​=IFERROR(SEARCH(B5,B2),»Not Found»)​FIND​ хитрости или примеры​ЕТЕКСТ​ раскрывающегося списка​ вас уделить пару​ значения содержащие фразы​ случае будут выведены​и выглядеть так:​ и фамилией содержится​ будет искать в​ найти.​ при помощи конструкции​ числе и точку),​

Б. Найти значения, которые начинаются со слова дрель или дрели и содержат как минимум 6 букв

​palmin90​​ которые содержат слово​​/​=ЕСЛИОШИБКА(ПОИСК(B5;B2);»Not Found»)​(НАЙТИ), с которой​ работы с этой​.​​Найти​​ секунд и сообщить,​ 5дрел7, Адрелу и​​ все значения, в​​ «дрел?». Вопросительный знак​

​ более одного пробела,​ строке «Артикул #123#​Просматриваемая_строка​
​ if then else​
​ на наличие одного​
​: ShAM, я рад,​
​ «bank» в названии​

​0​​Еще один способ проверить​​ мы познакомимся далее​ функцией, пожалуйста, делитесь​​Для возвращения результатов для​​последнего поиска.​ помогла ли она​ т.п.​ которые​ является подстановочным знаком.​

В. Найти значения, у которых слово дрель находится в середине строки

​ то для работоспособности​​ ID» последовательность из​​  — текст, в которой​ проверять на совпадение​ из вариантов: «а.»,​ что развеселил. Тяжкий​​ профессии:​​вместо TRUE/FALSE (ИСТИНА/ЛОЖЬ).​ результат, возвращаемый​ в рамках марафона​ ими в комментариях.​ условия, которое можно​

​Примечание:​ вам, с помощью​Критерий вводится в ячейку​
​начинаются​
​Для реализации этого варианта​
​ вышеупомянутых формул используйте​
​ 5 символов, которая​

​ ищется​​ с текстом, который​​ «аб», «абв.», вырезать​ день, проблема в​​=—ISNUMBER(SEARCH($E$1,B2,SEARCH(«|»,B2)))​​ Далее, функция​SEARCH​30 функций Excel за​Функция​ указать с помощью​

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

​ В условиях поиска можно​​ кнопок внизу страницы.​​I2​с текста-критерия (со​ поиска требуется функция​ функцию СЖПРОБЕЛЫ().​​ начинается и заканчивается​​Искомый_текст​ ищется.​

​ их из ячейки​

​ том, что уже​=—ЕЧИСЛО(ПОИСК($E$1;B2;ПОИСК(«|»;B2)))​SUM​
​(ПОИСК), на наличие​
​ 30 дней​
​SEARCH​
​ функции​

​ использовать подстановочные знаки.​​ Для удобства также​и выглядит так:​​ слова дрел) и​​ позволяющая использовать подстановочные​​Найдем текстовые значения, удовлетворяющие​ на знак #.​.​Подскажите, пожалуйста, как​ и передать в​

​ есть макрос и​
​Урок подготовлен для Вас​(СУММ) в ячейке​ ошибки – воспользоваться​.​(ПОИСК) ищет текстовую​Если​Чтобы задать формат для​

excel2.ru

Проверка ячейки на наличие в ней текста (без учета регистра)

​ приводим ссылку на​​ «дрел?». В этом​длиной как минимум​ знаки: используем функцию​ заданному пользователем критерию.​Чтобы найти позицию второго​Нач_позиция​ проверить при помощи​ переменную, либо делать​ хотелось его дополнить​ командой сайта office-guru.ru​ E2 подсчитает суммарное​ функцией​Используйте функцию​ строку внутри другой​.​ поиска, нажмите кнопку​ оригинал (на английском​ случае будут выведены​6 символов.​ ПОИСК(). Согласно критерию​ Критерии заданы с​

​ вхождения буквы «а»​  — позиция знака в​ .Find взятые от​ иное действие, если​ функцией, принцип ничего​Источник: http://blog.contextures.com/archives/2011/01/19/30-excel-functions-in-30-days-18-search/​ количество записей, где​ISNUMBER​SEARCH​ текстовой строки, и,​Для выполнения этой задачи​Формат​ языке) .​

​ все значения,​Для создания списка, содержащего​ «дрел?» (длина 5​ использованием подстановочных знаков.​ в строке «мама​

Поиск ячеек, содержащих текст

​ просматриваемой_строке, с которой​ исходного текста 4​ одного их данных​

  1. ​ не делать повторяющегося​Перевел: Антон Андронов​ искомый текст был​

    ​(ЕЧИСЛО). Если строка​(ПОИСК), чтобы найти​ если находит, то​

  2. ​ используются функции​​и внесите нужные​​Предположим, что вы хотите​​заканчивающиеся​​ найденные значения, воспользуемся​​ символов) — должны​​ Поиск будем осуществлять​​ мыла раму» используйте​​ должен начинаться поиск.​
    Найдите параметр на ленте

  3. ​ первых символа на​​ вариантов вначале ячейки​​ ежедневно хорош, для​Автор: Антон Андронов​ найден.​ найдена, результатом​ какой-либо текст внутри​​ сообщает её позицию.​​Если​

    ​ изменения во всплывающем​​ убедиться, что столбец​на слова дрель​

  4. ​ формулой массива:​ быть выведены 3​​ в диапазоне с​​ формулу =ПОИСК(«а»;»мама мыла​ Если аргумент​ наличие текста «аб.»?​​ нет.​​ этого и нужны​

  5. ​palmin90​​В следующем примере в​​SEARCH​ текстовой строки. В​Функция​,​ окне​ содержит текст, не​

    ​ или дрели.​=ИНДЕКС(Список;НАИМЕНЬШИЙ(​ значения: Дрель, дрель,​ повторяющимися значениями. При​​ раму»;ПОИСК(«а»;»мама мыла раму»)+1).​​нач_позиция​​ То есть, чтобы​​Сможет ли помочь​​ программисты.​​: Приветствую, нужна помощь.​

  6. ​ столбце B показаны:​​(ПОИСК) будет число,​​ этом примере мы​​SEARCH​​Поиск​

    ​Найти формат​​ номера. Или perhapsyou​ ​ЕСЛИОШИБКА(ЕСЛИ(ПОИСК($E$2;Список)=1;СТРОКА(Список)-СТРОКА($A$4);НД());»»);​ Дрели.​ наличии повторов, можно​ Чтобы определить есть​​опущен, то предполагается​​ в случае, если​

​ в данном вопросе​​В общем вопрос​Нужно найти и​

Проверка ячейки на наличие в ней любого текста

​Название города | Профессия​ а значит функция​​ будем искать одиночный​​(ПОИСК) ищет текстовую​

Примеры ЕТЕКСТ

Проверка соответствия содержимого ячейки определенному тексту

​и​.​ необходимо найти все​Для создания списка, содержащего​​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список))))​​Для создания списка, содержащего​

Примеры ЕСЛИ

Проверка соответствия части ячейки определенному тексту

​ ожидать, что критерию​ ли третье вхождение​​ значение 1.​​ в первых 4​​ инструмент Find в​​ закрыт, на стадии​​ заменить символ на​​Наша задача найти профессии,​

​ISNUMBER​​ символ (введённый в​​ строку внутри другой​​ЕЧИСЛО​

Примеры ЕСЛИ, ЕЧИСЛО и ПОИСК

support.office.com

30 функций Excel за 30 дней: ПОИСК (SEARCH)

​Кнопка​​ заказы, которые соответствуют​ найденные значения, воспользуемся​​)​ найденные значения, воспользуемся​ будет соответствовать несколько​​ буквы «м» в​​В аргументе​ символах есть текст​ VBA?​ компилирования из csv​ всем рабочем пространстве​

​ содержащие текстовую строку,​(ЕЧИСЛО) вернет TRUE​​ ячейке B5) внутри​​ текстовой строки. Она​.​Параметры​ определенным Продавец. Если​ формулой массива:​Часть формулы ПОИСК($E$2;Список)=1 определяет:​ формулой массива:​ значений. Для их​ строке «мама мыла​искомый_текст​

​ «аб.», выполнялась одно​Пробовал написать макрос​ в json эту​​ листа.​​ введённую в ячейке​ (ИСТИНА). Если же​ текстовой строки, находящейся​ может:​Примечание:​служит для задания​

Функция 18: SEARCH (ПОИСК)

​ у вас нет​​=ИНДЕКС(Список;НАИМЕНЬШИЙ(​​начинается​=ИНДЕКС(Список;​ вывода в отдельный​ раму» используйте формулу​можно использовать подстановочные​

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

Как можно использовать функцию SEARCH (ПОИСК)?

​ условие, а если​​ при помощи Find,​​ вещь править будут.​Ситуация такая:​ E1. Формула в​ текст не найден,​

  • ​ в ячейке B2.​Найти строку текста внутри​ Функция​
  • ​ более подробных условий​ проблемой верхний или​
  • ​ЕСЛИОШИБКА(ЕСЛИ(ПОИСК($I$2;ПРАВСИМВ((Список);ДЛСТР($I$2)));СТРОКА(Список)-СТРОКА($A$4);НД());»»);​ли значение из​

Синтаксис SEARCH (ПОИСК)

​НАИМЕНЬШИЙ(ЕСЛИОШИБКА(ЕСЛИ((ПОИСК($C$2;Список)=1)*(ДЛСТР($C$2)=ДЛСТР(Список))=1;СТРОКА(Список)-СТРОКА($A$4);НД());»»);​​ диапазон удобно использовать​​ =ЕСЛИ(ДЛСТР(ПОДСТАВИТЬ(«мама мыла раму»;»м»;»»;3))=ДЛСТР(«мама​ знаки — вопросительный​

​ текст не "аб.",​
​ но не могу​

  • ​palmin90​​1. Нужно выделить​ ячейке C2 будет​
  • ​ то​​=SEARCH(B5,B2)​ другой текстовой строки​поиска​
  • ​ поиска. Например, можно найти​​ нижний регистр текста,​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список))))​ диапазона​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список))))​

Ловушки SEARCH (ПОИСК)

​ формулы массива.​​ мыла раму»);»Нет третьего​​ знак (?) и​ а просто «а.»,​ никак понять, как​: RAN, только дошло​ всю страницу от​ следующая:​SEARCH​​=ПОИСК(B5;B2)​​ (без учёта регистра).​не учитывается регистр.​ все ячейки, содержащие​​ существует несколько способов​)​​A5:A13​

Пример 1: Находим текст в строке

​)​​Пусть Исходный список значений​​ вхождения м»;»Есть третье​ звездочку (*). Вопросительный​ выполнялось другое?​ задать именно жесткий​ как вы до​ ctrl-home до ctrl-end.​=—ISNUMBER(SEARCH($E$1,B2))​(ПОИСК) сообщит об​Если текст найден, функция​

​Использовать в поиске символы​
​Вчера в марафоне​

​ данных определенного типа,​​ проверки, если ячейка​​Часть формулы ПОИСК($I$2;ПРАВСИМВ((Список);ДЛСТР($I$2))) определяет:​с фразы «дрел??».​Часть формулы ПОИСК($C$2;Список)=1 определяет:​ (например, перечень инструментов)​ вхождение м»)​ знак соответствует любому​​krosav4ig​​ поиск по вышеуказаным​

​ этой странности додумались,​2. Найти в​=—ЕЧИСЛО(ПОИСК($E$1;B2))​​ ошибке, а​​SEARCH​ подстановки.​​30 функций Excel за​​ такого как формулы.​ содержит текст.​​совпадают ли последние 5​​ Критерию также будут​начинается​ находится в диапазоне​Формула =ПОИСК(«клад?»;»докладная») вернет 3,​ знаку; звездочка —​:​наборам символов, чтобы​​ раз ctrl-home написано​​ ячейках , и​​Данная формула нашла строки,​​ISNUMBER​

​(ПОИСК) возвратит номер​
​Определить стартовую позицию в​

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

Пример 2: Используем символы подстановки с SEARCH (ПОИСК)

​ 30 дней​Для поиска на текущем​​Для поиска текста можно​​ символов​ соответствовать значения начинающиеся​ли значение из​​A5:A13.​​ т.е. в слове​ любой последовательности знаков.​​giovanni​​ указать макросу, что​ значит я все​​ заменить его на​​ которые содержат слово​(ЕЧИСЛО) возвратит FALSE​ позиции его первого​ просматриваемом тексте.​​мы распознавали типы​​ листе или во​ также использовать фильтр.​​значений из диапазона​​ с фраз дрелью,​ диапазона​

​См. Файл примера.​​ «докладная» содержится слово​​ Если нужно найти​, .Find не о​​ ищутся именно «а.»,​​ руками делаю)))​ /.​ «bank», но в​​ (ЛОЖЬ).​​ символа в текстовой​Функция​

​ ошибок с помощью​ всей книге можно​​ Дополнительные сведения см.​​A5:A13​ дрел23 и т.п.​A5:A13​Выведем в отдельный диапазон​

​ из 5 букв,​
​ в тексте вопросительный​

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

Пример 3: Определяем стартовую позицию для SEARCH (ПОИСК)

​ том, вам нужен​ «аб.» или «абв.»​RAN​​Pelena​​ одной из них​В значении аргумента​​ строке. Если не​​SEARCH​​ функции​​ выбрать в поле​ в статье Фильтрация​​с фразой «дрел?».​​Критерий вводится в ячейку​с фразы «дрел?».​ значения, которые удовлетворяют​ первые 4 из​ знак или звездочку,​

​ Instr​ и именно вначале​

​: Неужели есть? И​

​: Обязательно макросом? Стандартный​ это слово встречается​find_text​ найден, результатом будет​(ПОИСК) имеет вот​ERROR.TYPE​

​Искать​
​ данных.​

​ Критерию также будут​G2​Часть формулы ДЛСТР($C$2)=ДЛСТР(Список)​ критерию, причем критерий​ которых клад (начиная​ следует поставить перед​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub dd()​ содержимого ячейки​ где об этом​

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

​ инструмент Найти/Заменить не​ не в названии​​(искомый_текст) можно использовать​​ сообщение об ошибке​ такой синтаксис:​​(ТИП.ОШИБКИ) и убедились,​​вариант​Выполните следующие действия, чтобы​ соответствовать значения заканчивающиеся​и выглядит так:​ определяет:​​ задан с использованием​​ с третьей буквы​ ними тильду (~).​​Dim xcell As​​Подскажите, пожалуйста, в​ хоть намек?​ вариант?​

​ профессии, а в​ символы подстановки. Символ​#VALUE!​SEARCH(find_text,within_text,[start_num])​ что она может​Лист​

​ найти ячейки, содержащие​
​ на фразы дрела,​

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

​ «?дрель?». В этом​равна ли длина строки​
​ подстановочных знаков (*,​
​ слова докладная).​

​Если искомый_текст не найден,​

office-guru.ru

Поиск в диапазоне ячеек символа «/» и замена оного (Макросы/Sub)

​ Variant​​ какую сторону смотреть)​
​palmin90​palmin90​ названии города. Это​*​
​(#ЗНАЧ).​
​ПОИСК(искомый_текст;текст_для_поиска;[нач_позиция])​ быть очень полезна​или​
​ определенный текст.​ дрел6 и т.п.​ случае будут выведены​значения из диапазона​

​ ?). Рассмотрим различные​​Функция НАЙТИ() учитывает РЕгиСТР​ возвращается значение ошибки​xcell = Range(«A2»).Value​

​Спасибо!​​: RAN,​: Pelena, к сожалению​ нас не устраивает!​(звёздочка) заменяет любое​В случае, когда результатом​find_text​ для исправления ошибок​
​Книга​Выделите диапазон ячеек, среди​СОВЕТ:​ все значения,​A5:A13​ варианты поиска.​

​ букв и не​​ #ЗНАЧ!​Select Case 1​krosav4ig​ShAM​ нет, у меня​:o

​После каждого названия города​​ количество символов или​ является ошибка, Вы​hands

​(искомый_текст) – текст,​​ в Excel.​.​ которых требуется осуществить​О поиске текстовых​содержащие​5 символам?​Для удобства написания формул​ допускает использование подстановочных​Функция ПОИСК() не учитывает​Case InStr(xcell, «абв.»)​: Доброй ночи​
​: Макрорекордер рулит:​ каждый день новый​ стоит символ​ их отсутствие, а​ можете использовать функцию​

​ который Вы ищете.​​18-й день марафона мы​Нажмите кнопку​ поиск.​ значений с учетом​слово дрель, и​Знак * (умножить) между​

​ создадим Именованный диапазон​​ знаков. Для поиска​ РЕгиСТР букв. Для​MsgBox «абв.»​

​200?’200px’:»+(this.scrollHeight+5)+’px’);»>.Find(«абв.*», , xlFormulas, xlWhole,​​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub Макрос1(): Cells.Replace What:=»»,​

​ файл от 5​​|​
​?​IFERROR​

excelworld.ru

Поиск определенных символов вначале содержимого ячейки (Макросы/Sub)

​within_text​​ посвятим изучению функции​
​Найти все​Чтобы выполнить поиск по​
​ РЕгиСТра читайте в​ у которых есть​ частями формулы представляет​
​ Список для диапазона​ без учета регистра,​ поиска с учетом​Case InStr(xcell, «аб.»)​ xlByRows, xlNext)​
​ Replacement:=»/»: End Sub​ до 13 тыс.строк,​(вертикальная черта), поэтому​(вопросительный знак) заменяет​(ЕСЛИОШИБКА), чтобы вместо​(текст_для_поиска) – текстовая​SEARCH​или​ всему листу, щелкните​ статье Поиск текстовых​ перед ним и​ условие И (значение​A5:A13​ а также для​ регистра следует воспользоваться​MsgBox «аб.»​
​giovanni​giovanni​ где в некоторых​ мы, используя функцию​
​ любой одиночный символ.​ выполнения функции​ строка, внутри которой​(ПОИСК). Она ищет​Найти далее​ любую ячейку.​
​ значений в списках.​ после него как​ должно начинаться с​.​ поиска с использованием​ функцией НАЙТИ().​
​Case InStr(xcell, «а.»)​: Пришла на ум​
​: Доброй ночи!​

​ ячейках эти символы.​​SEARCH​​В нашем примере использован​SEARCH​

​ происходит поиск.​​ символ (или символы)​.​На вкладке​ Часть3. Поиск с​ минимум 1 символ.​ дрел и иметь​Перечень найденных значений будем​ подстановочных знаков пользуйтесь​
​Формула =ПОИСК("к";"Первый канал") вернет​
​MsgBox "а."​
​ примерно такая идея​

​Подскажите, пожалуйста, по​Дело в том,​(ПОИСК), можем найти​ символ подстановки​(ПОИСК) вывести соответствующее​start_num​ внутри текстовой строки​Найти все​Главная​ учетом РЕГИСТРА.​
​Для создания списка, содержащего​ такую же длину,​ помещать в отдельный​ функцией ПОИСК().​ 8, т.к. буква​End Select​ решения задачи. Например,​ следующему вопросу.​ что далее файл​ позицию этого символа.​*​ сообщение. Функция​(нач_позиция) – если​ и сообщает, где​списки каждого экземпляра​

​в группе​​Примечание:​​ найденные значения, воспользуемся​​ как и критерий,​ столбец.​Функция ПОИСК() может быть​​ к находится на​
​End Sub​ ячейка с исходным​
​К примеру, есть​
​ конвертим в .json,​
​ Его позиция может​
​, поэтому в названиях​
​IFERROR​
​ не указан, то​
​ он был найден.​
​ элемента, который необходимо​
​Редактирование​
​Мы стараемся как​

excelworld.ru

​ формулой массива:​


Функция

НАЙТИ(

)

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

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

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


НАЙТИ

(

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

;

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

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


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

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


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

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

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

.


Нач_позиция

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

нач_позиция

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

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

Функция

НАЙТИ()

учитывает РЕгиСТР

букв, т.е. результат поиска в строке »

ПЕРВЫЙ первый

» будет разным для формул

=НАЙТИ(«ПЕРВЫЙ»;»ПЕРВЫЙ первый»)

и

=НАЙТИ(«первый»;»ПЕРВЫЙ первый»)

. Первая вернет 1, вторая 8.

Примеры

Формула

=НАЙТИ(«к»;»Первый канал»)

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

к

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

=НАЙТИ(«К»;»Первый канал»)

вернет значение ошибки #ЗНАЧ!, т.к. с учетом регистра строка

Первый канал

не содержит букву

К

.

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

А2

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

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

. Формула

=НАЙТИ(СИМВОЛ(32);A2)

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

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

=НАЙТИ(«а»;»мама мыла раму»;НАЙТИ(«а»;»мама мыла раму»)+1).

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

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

.

Функция

НАЙТИ()

vs

ПОИСК()

Функция

НАЙТИ()

учитывает РЕгиСТР

букв и не допускает использование

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

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

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

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

ПОИСК()

.

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

ЛЕВСИМВ()

,

ПРАВСИМВ()

и

ПСТР()

Функция

НАЙТИ()

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

ЛЕВСИМВ()

,

ПРАВСИМВ()

и

ПСТР()

.

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

А2

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

=ЛЕВСИМВ(A2;НАЙТИ(СИМВОЛ(32);A2)-1)

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

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

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

СЖПРОБЕЛЫ()

.

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

Прежде чем мы начнем обсуждать различные методы работы с подстроками в Excel, давайте уделим немного времени определению термина, чтобы мы могли начать с той же страницы. Итак, что такое подстрока? Проще говоря, это часть текстовой записи. Например, если вы наберете что-то вроде «AA-111» в ячейке, вы назовете это буквенно-цифровая строкаи любая часть строки, скажем, «AA», будет подстрока.

Хотя в Excel нет такой функции, как функция подстроки, существуют три текстовые функции (LEFT, RIGHT и MID) для извлечения подстроки заданной длины. Кроме того, есть функции НАЙТИ и ПОИСК для получения подстроки до или после определенного символа. И есть несколько других функций для выполнения более сложных операций, таких как извлечение чисел из строки, замена одной подстроки на другую, поиск частичного совпадения текста и т. д. Ниже вы найдете примеры формул для выполнения всего этого и многого другого. .

Microsoft Excel предоставляет три различные функции для извлечения текста заданной длины из ячейки. В зависимости от того, где вы хотите начать извлечение, используйте одну из следующих формул:

  • Функция LEFT — извлечь подстроку слева.
  • Функция ПРАВО — извлечь текст справа.
  • Функция MID — для извлечения подстроки из середины текстовой строки, начиная с указанной вами точки.

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

Чтобы извлечь текст слева от строки, вы используете функцию Excel LEFT:

СЛЕВА(текст, [num_chars])

Где текст адрес ячейки, содержащей исходную строку, и num_chars количество символов, которые вы хотите извлечь.

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

=ЛЕВО(A2,4)
ЛЕВАЯ формула для извлечения подстроки из начала строки

Получить подстроку с конца строки (ВПРАВО)

Чтобы получить подстроку из правой части текстовой строки, воспользуйтесь функцией Excel ПРАВИЛЬНО:

ПРАВИЛЬНО(текст, [num_chars])

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

=ВПРАВО(A2,4)
ПРАВИЛЬНАЯ формула для извлечения подстроки из конца строки

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

По сравнению с двумя другими текстовыми функциями, MID имеет несколько иной синтаксис:

MID(текст, start_num, num_chars)

Помимо текст (исходная текстовая строка) и num_chars (количество символов для извлечения), вы также указываете start_num (отправная точка).

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

=СРЕДНЕЕ(A2,6,3)
Формула MID для извлечения текста из середины строки

Кончик. Вывод формул Right, Left и Mid всегда является текстом, даже если вы извлекаете число из текстовой строки. Если вы хотите оперировать результатом как числом, оберните формулу в функцию ЗНАЧЕНИЕ следующим образом:

= ЗНАЧЕНИЕ (СРЕДНЕЕ (A2,6,3))

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

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

Как извлечь текст перед определенным символом

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

ОСТАВИЛ(клеткаПОИСК(«уголь«, клетка)-1)

Например, чтобы извлечь подстроку перед символом дефиса (-) из ячейки A2, используйте следующую формулу:

=ВЛЕВО(A2, ПОИСК(«-«,A2)-1)

Независимо от того, сколько символов содержит ваша строка Excel, формула извлекает только текст до первого дефиса:
Извлечение текста перед определенным символом

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

ПРАВИЛЬНО(клетка,ЛЕН(клетка)-ПОИСК(«уголь«, клетка))

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

=ВПРАВО(A2,ДЛСТР(A2)-ПОИСК(«-«,A2))
Извлечение текста после определенного символа

Как извлечь текст между двумя экземплярами символа

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

СРЕДНЯЯ(клеткаПОИСК(«уголь«, клетка)+1, ПОИСК («уголь«, клеткаПОИСК («чар», клетка)+1) — ПОИСК («уголь«, клетка)-1)

Первые два аргумента этой формулы MID предельно ясны:

Текст это ячейка, содержащая исходную текстовую строку.

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

Num_chars (количество символов для извлечения) — самая сложная часть:

  • Во-первых, вы определяете положение второго вхождения символа, вкладывая одну функцию поиска в другую.
  • После этого вы вычитаете позицию 1-го вхождения из позиции 2-го вхождения и вычитаете 1 из результата, так как вы не хотите включать символ-разделитель в результирующую подстроку.

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

=СРЕДН(A2, ПОИСК(«-«,A2) + 1, ПОИСК(«-«,A2,ПОИСК(«-«,A2)+1) — ПОИСК(«-«,A2) — 1)

На скриншоте ниже показан результат:
Извлечение текста между двумя дефисами

Если вы хотите извлечь текст между 2-м и 3-м или 3-м и 4-м вхождением одного и того же символа, вы можете использовать более компактную комбинацию ПОИСК ПОДСТАВКИ, чтобы получить позицию символа, как описано в разделе Как найти N-е вхождение символа в строку. :

НАЙТИ(СИМВОЛ(1),ПОДСТАВИТЬ(клетка,персонаж,СИМВОЛ(1),N-е вхождение))

В нашем случае мы могли бы извлечь подстроку между 2-м и 3-м дефисом по следующей формуле:

=MID(A2, НАЙТИ(СИМВОЛ(1),ЗАМЕНИТЬ(A2,»-«,СИМВОЛ(1),2))+1, НАЙТИ(СИМВОЛ(1),ЗАМЕНИТЬ(A2,»-«,СИМВОЛ(1) ,3)) — НАЙТИ(СИМВОЛ(1),ПОДСТАВИТЬ(A2,»-«,СИМВОЛ(1),2))-1)
Извлечение подстроки между 2-м и 3-м дефисом

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

IНОМЕР(ПОИСК(«подстрока«, клетка))

Предположим, у вас есть список британских почтовых индексов в столбце A, и вы хотите найти те, которые содержат подстроку «1ZZ». Чтобы это сделать, используйте эту формулу:

=ISNUMBER(ПОИСК(«1zz», A2))

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

Если вы хотите вернуть собственное сообщение вместо логических значений ИСТИНА и ЛОЖЬ, вложите приведенную выше формулу в функцию ЕСЛИ:

=ЕСЛИ(IЧИСЛО(ПОИСК(«1zz», A2)), «Да», «»)

Если ячейка содержит подстроку, формула возвращает «Да», в противном случае — пустую строку («»):
Формула для идентификации ячеек, содержащих определенную подстроку

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

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

Как вы только что видели, Microsoft Excel предоставляет множество различных функций для работы с текстовыми строками. Если вы не уверены, какая функция лучше всего подходит для ваших нужд, передайте задание нашему Ultimate Suite for Excel. Имея эти инструменты в своем арсенале Excel, вы просто переходите к Данные об аблебитах вкладка > Текст группу и нажмите Извлечь:
Инструмент «Извлечь текст» в Excel

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

  1. Укажите, сколько символов вы хотите получить из начала, конца или середины строки; или выберите извлечение всего текста до или после заданного символа.
  2. Нажмите Вставить результаты. Сделанный!

Например, чтобы получить доменные имена из списка адресов электронной почты, выберите Все после текста переключатель и введите @ в поле рядом с ним. Чтобы извлечь имена пользователей, выберите Все перед текстом переключатель, как показано на скриншоте ниже.
Определите подстроку, которую вы хотите извлечь.

И через мгновение вы получите следующие результаты:
Части адресов электронной почты извлекаются в отдельные столбцы.

Помимо скорости и простоты, инструмент Извлечь текст имеет дополнительную ценность — он поможет вам изучить формулы Excel в целом и функции работы с подстроками в частности. Как? Установив флажок «Вставить как формулу» в нижней части панели, вы гарантируете, что результаты выводятся в виде формул, а не значений.

В этом примере, если вы выберете ячейки B2 и C2, вы увидите следующие формулы соответственно:

  • Чтобы извлечь имя пользователя:

    =ЕСЛИОШИБКА(СЛЕВА(A2,ПОИСК(«@»,A2)-1),»»)

  • Чтобы извлечь домен:

    =ЕСЛИОШИБКА(ПРАВО(A2, ДЛСТР(A2)- ПОИСК(«@»,A2) — ДЛСТР(«@») + 1),»»)

Сколько времени у вас ушло бы на то, чтобы вычислить эти формулы самостоятельно? 😉

Поскольку результаты представляют собой формулы, извлеченные подстроки будут обновляться автоматически, как только в исходные строки будут внесены какие-либо изменения. Когда в ваш набор данных добавляются новые записи, вы можете копировать формулы в другие ячейки, как обычно, без необходимости заново запускать инструмент «Извлечь текст».

Если вам интересно попробовать это, а также многие другие полезные функции, включенные в Ultimate Suite for Excel, вы можете загрузить ознакомительную версию.

Дополнительные формулы для подстрок в Excel

В этом уроке мы продемонстрировали некоторые классические формулы Excel для извлечения текста из строки. Как вы понимаете, может быть почти бесконечное количество вариаций этих базовых сценариев. Ниже вы найдете еще несколько примеров формул, в которых вам пригодятся функции Text.

Доступные загрузки

Функции работы с подстроками в Excel — практическая рабочая тетрадь (файл .xlsx)
Ultimate Suite — пробная версия (файл .exe)

Функция НАЙТИ в Excel

Добрый день друзья!

Темой этой статьи будет еще одна возможность работы с текстом, это познания как работает функция НАЙТИ в Excel. Я думаю, что не стоит объяснять, в чём может быть выражена полезность этой функции, это уже понятно просто из названия и означает это то что, данная функция будет искать точное совпадение заданного текста в указанной текстовой строке, и вернет начальную позицию найденной строки.

Но сразу могу сказать, что в чистом виде функция НАЙТИ выглядит очень неприглядно и в принципе практически не используется. Самая распространенная возможность как используется функция НАЙТИ в Excel только в комбинированном виде, в соединение с такими функциями как ЛЕВСИМВ, ПРАВСИМВ и ПСТР. Такие комбинации позволят эффективно использовать все возможности функции НАЙТИ и выполнять более сложные задачи в сравнении с простым использованием.

Ну, а теперь давайте рассмотрим синтаксис, который имеет функция НАЙТИ в Excel:

=НАЙТИ(текст который ищем ; текст который просматривается ; [начальная позиция]), где

  • текст, который ищем – это, как видно с аргумента, текст который нам нужно найти;
  • текст, который просматривается – это тот текст, ячейка или ссылка где функция будет искать;
  • [начальная позиция] – это аргумент, который показывает, с какой позиции должен начинаться поиск в просматриваемом тексте, если этот аргумент не указывать, то поиск, по умолчанию, начнется со значения 1.

Обращаю ваше внимание, что особенность, которая имеет функция НАЙТИ в Excel, это гиперчувствительность к регистру букв, то есть вам нужно указывать правильно прописные и строчные буковки.

Например, рассмотрим 2 примера для сравнения:

=НАЙТИ(«ВОДА»; «ВОДА вода»), нам вернет значение 1, а вот формула

=НАЙТИ(«вода»; «ВОДА вода»), вернёт позицию 6.

Как видно из примера, это очень существенная разница, что бы ее игнорировать.

В случае, когда текст, который вы хотите найти не будет обнаружен, формула вернёт ошибку #ЗНАЧ!. Итак, собственно, давайте на примерах рассмотрим вариативность, как применяется функция НАЙТИ в Excel в простых и сложных примерах:

Простые примеры:

Рассмотрим применение только одной функции НАЙТИ, в нескольких вариациях и исполнениях. Возьмем, к примеру, текстовое значение «Нагаев Артём» и применим функцию:

=НАЙТИ(«А»;A2), в этой формуле мы ищем позицию первой буквы «А» в ячейке А2, и получаем результат «8»;

=НАЙТИ(«а»;A2), в этой формуле мы ищем позицию первой буквы «а» в ячейке А2, и получаем результат «2»;

=НАЙТИ(«а»;A2;3), в этой формуле мы ищем позицию первой буквы «а» в ячейке А2, но поиск начинаем с третьего знака и получаем результат «4». Комбинированные примеры:

Первым примером будет использование комбинации с помощью функции ПСТР. Например, мы имеем название продукции с номенклатурным номером «Светодиод №456217-485» и нам надо отделить зерна от плевы, то есть название детали от номера и для этого нужна формула:

=ПСТР(A4;1;НАЙТИ(« №»;A4;1) -1), в формуле мы находим позицию « №» и всё что до нее вытягивается соответствующей формулой, и мы получаем результат «Светодиод». Аргумент «-1» будет учитывать тот факт, что позицию, которую занимает текст, который мы ищем, также является входящим в диапазон подсчёта и к возвращению не подлежит. Вторым примером я использую комбинации с функциями ЛЕВСИМВ, ПРАВСИМВ. Например, в ячейке А5 у нас введена имя и фамилия «Нагаев Артём», в этом случае используя формулы:

=ЛЕВСИМВ(A5;НАЙТИ(СИМВОЛ(32);A5) -1), мы сможем извлечь фамилию,

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

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

Если возникли вопросы, пишите комментарии, ставьте лайки, если вам понравилось.

До встречи в новых статьях!

«На прихоти у нас всегда найдутся деньги, мы скупимся только на затраты полезные и необходимые.
»
О. Бальзак

Поиск в Excel, функции поиска

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

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

Для поиска текста в Microsoft Excel есть две функции:

  1. НАЙТИ(Текст для поиска; Исходный текст; [Начальная позиция]). Эта функция имеет 2 обязательных аргумента и один необязательный:
    • Текст для поиска – та последовательность символов, которую нужно найти. Это обязательный аргумент
    • Исходный текст – строка, в которой осуществляется поиск. Обязательный аргумент
    • Начальная позиция – порядковый номер символа в исходном тексте, с которого начинается поиск. Необязательный аргумент . Если он не задан, поиск начинается с первого символа

Функция НАЙТИ учитывает регистр текста и не поддерживает использование подстановочных символов (о них читайте дальше).

Функция НАЙТИ в Эксель

  1. ПОИСК(Текст для поиска; Исходный текст; [Начальная позиция]) имеет аналогичный синтаксис и аргументы. Отличается тем, что не учитывает регистр и поддерживает использование постановочных символов.

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

Как видите, эта функция дала другой результат, поскольку регистр символов не учитывался в поиске

Вы спросите, что такое подстановочные символы? Это специальные символы, позволяющие пропустить неизвестную часть текста для поиска:

  • ? – один любой символ
  • * – любая последовательность символов

Если знак вопроса или звёздочка – часть строки для поиска, а не подстановочный символ, поставьте перед ними знак тильда (

Давайте запишем такую формулу: =ПОИСК(«??чн»;A1;1). Функция будет искать строку из двух любых символов, после которых идут буквы «чн». Поиску соответствует часть слова «Табличный» в тексте примера, т.е. комбинация символов «личн». Результатом функции будет значение «4».

Подстановочные символы в Excel

Теперь запишем формулу =ПОИСК(«п*с»;A2;1) . Функция ищет комбинацию «п» + любое количество любых символов + «с». В примере – это часть слова «процессор». Результат выполнения функции – 11.

Подстановочный символ-звездочка в Эксель

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

А следующая статья будет посвящена замене текста в строке. Важная тема, которую обязательно нужно изучить!

Задавайте вопросы в комментариях и подписывайтесь на обновления, чтобы ничего не пропустить!

Функция FIND (НАЙТИ) в Excel. Как использовать?

Функция НАЙТИ (FIND) в Excel используется для поиска текстового значения внутри строчки с текстом и указать порядковый номер буквы с которого начинается искомое слово в найденной строке.

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

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

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

=НАЙТИ(искомый_текст;просматриваемый_текст;[нач_позиция]) – русская версия

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

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

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

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

Примеры использования функции НАЙТИ в Excel

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

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

Обратите внимание, что так как функция НАЙТИ в Excel чувствительна к регистру, вы не сможете найти слово “доброе” в словосочетании “Доброе утро”, так как оно написано с маленькой буквы. Для того, чтобы осуществить поиска без учета регистра следует пользоваться функцией SEARCH .

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

Третий аргумент функции НАЙТИ указывает позицию, с которой функция начинает поиск искомого значения. На примере выше функция возвращает число “1” когда мы начинаем поиск слова “Доброе” в словосочетании “Доброе утро” с начала текстовой строки. Но если мы зададим аргумент функции start_num (нач_позиция) со значением “2”, то функция выдаст ошибку, так как начиная поиск со второй буквы текстовой строки, она не может ничего найти.

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

Пример 3. Поиск текстового значения внутри текстовой строки с дублированным искомым значением

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

Но, если мы укажем в качестве аргумента start_num (нач_позиция) число “2” и попросим функцию начать поиск со второй буквы в заданной текстовой строке, то функция выдаст число “6”, так как Excel находит искомое слово “Доброе” начиная со второй буквы словосочетания “Доброе Доброе утро” только на 6 позиции.

Примеры использования функции НАЙТИ в Excel формулах

Функции ЛЕВСИМВ, ПРАВСИМВ и ПСТР прекрасно применяются для разделения строк на слова или фрагменты текстов, но при условии, что вам заранее известны позиции символов с которых будет разделение. Что же делать если заранее вам не известно где в текстовой строке находится тот символ, начиная с которого нужно вырезать фрагмент текста?

Пример формулы НАЙТИ, ДЛСТР и ПРАВСИМВ в Excel

Допустим у нас имеется прайс-лист с кодами товаров, как получить часть символов после дефиса с каждого кода, если дефис каждый раз находиться на новой позиции символов?

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

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

Для реализации данной задачи следует использовать формулу с комбинацией функций ПРАВСИМВ, ДЛСТР и НАЙТИ:

Благодаря функции НАЙТИ можно автоматически определять позицию в текстовой строке для указанного символа в ее аргументах. А после использовать номер позиции в следующих операциях, например, при автоматической генерации значений для второго аргумента функции ПРАВСИМВ. Реализуется генерация путем определения необходимого числа при вычитании от длины строки, которую возвращает функция ДЛСТР номера позиции символа – «-».

Пример использования НАЙТИ и ПСТР в формуле Excel

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

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

Функция НАЙТИ требует заполнить минимум 2 из 3-х аргументов:

  1. Искомый_текст – здесь необходимо указать текст, который следует найти и получить его порядковый номер (позицию) в исходной текстовой строке.
  2. Просматриваемый_текст – тут указываем ссылку на ячейку с исходной строкой, которая содержит искомый символ или текст.
  3. Нач_позиция – это не обязательный аргумент. Здесь можно указать номер позиции символа в строке, с которого следует начинать поиск. Если строка содержит более одного найденного искомого символа, то с помощью данного необязательного аргумента можно указать номер символа с которого будет просматриваться остальная часть строки. Если он не указан в этом аргументе, то по умолчанию он равен = 1, то есть с первого, а значит целая строка.

На пример, в примере функция находит первый дефис в строке «PWR-16-Small». В результате своего вычисления она по умолчанию возвращает число 4. Так как первый дефис в и сходной строке находится на четвертой позиции.

Динамические формулы с использованием функции НАЙТИ

Но если мы воспользуемся третьим необязательным аргументом и укажем в нем число 5. То есть просматривать первую не целиком, а начиная после первого дефиса, четвертого символа. Тогда функция будет возвращать нам порядковую позицию второго «-», то есть число – 7.

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

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

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

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

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

Пример из практического опыта офисного сотрудника. Необходимо получить часть кода товаров, которая начинается от второго дефиса. Для этого создаем динамическую формулу:

Здесь мы использовали автоматический поиск первого дефиса. Номер позиции послужил третьим необязательным опциональным аргументом функции НАЙТИ для автоматического поиска каждого второго дефиса в каждом коде товара. Далее используя функцию ДЛСТР, мы определяем длину исходной строки и вычитаем от нее число позиции второго символа. Другими словами, от длины кода вычитаем количество символов до второго дефиса (включительно с ним, о чем свидетельствует сложение +1). Таким образом мы динамически определяем второй аргумент для функции ПРАВСИМВ чтобы вырезать разной величины фрагмент текста из строк. К том уже все строки с разной длиной, да еще и в разном месте находится второй дефис. Но умная формула справилась полностью в автоматическом режиме.

НАЙТИ, НАЙТИБ (функции НАЙТИ, НАЙТИБ)

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

В этой статье описаны синтаксис формулы и использование функций НАЙТИ и НАЙТИБ в Microsoft Excel.

Функции НАЙТИ и НАЙТИБ находят вхождение одной текстовой строки в другую и возвращают начальную позицию искомой строки относительно первого знака второй строки.

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

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

Функция НАЙТИ при подсчете всегда рассматривает каждый знак, как однобайтовый, так и двухбайтовый, как один знак, независимо от выбранного по умолчанию языка.

Функция НАЙТИБ при подсчете рассматривает каждый двухбайтовый знак как два знака, если включена поддержка языка с БДЦС и такой язык установлен по умолчанию. В противном случае функция НАЙТИБ рассматривает каждый знак как один знак.

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

Аргументы функций НАЙТИ и НАЙТИБ описаны ниже.

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

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

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

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

Если в качестве аргумента «искомый_текст» задана пустая строка («»), функция НАЙТИ выводит значение, равное первому знаку в строке поиска (знак с номером, соответствующим аргументу «нач_позиция» или 1).

Искомый_текст не может содержать подстановочные знаки.

Если искомый_текст не отображается в просматриваемый_текст, функция найти и НАЙТИБ возвращают #VALUE! значение ошибки #ЧИСЛО!.

Если нач_позиция не больше нуля, найти и НАЙТИБ возвращают #VALUE! значение ошибки #ЧИСЛО!.

Если «нач_позиция» больше, чем длина просматриваемый_текст, найти и НАЙТИБ возвращают #VALUE! значение ошибки #ЧИСЛО!.

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

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

Понравилась статья? Поделить с друзьями:
  • Как найти сигму в excel
  • Как найти середину страницы в word
  • Как найти русские символы в excel
  • Как найти сервис поиск решения в excel
  • Как найти русские буквы в excel