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 выполняет поиск текста в просматриваемой ячейке и возвращает числовое значение. При необходимости можно указать номер символа, с которого начинается искомая часть фразы в найденной строке.

Практическая работа функции НАЙТИ в Excel

Как работает функция НАЙТИ? Схематически, её синтаксис выглядит следующим образом:

синтаксис функции НАЙТИ

Аргумент нач_позиция является необязательным. Если пользователь не укажет его, тогда автоматически он принимается за 1. Если искомый_текст не будет найден, возвратится значение ошибки #ЗНАЧ!. Она очень похожа на функцию ПОИСК, у них одинаковый синтаксис. Однако их различия в том, что НАЙТИ обращает внимание на регистр букв. На картинке мы видим текст, где используется одно слово в разных регистрах. В ячейке В2 мы ищем слово «найти», а в ячейке В3 – то же слово в верхнем регистре:

внимание на регистр букв

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

регистр букв ПОИСК

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

Также эта функция не допускает использование подстановочных знаков (звездочка «*», знак вопроса «?», тильда «~»):

ПОИСК не видит разницу

Однако, это не распространяется на ПОИСК, который возвращает нам корректный результат.



Практические примеры работы формул чтобы НАЙТИ значение

Как использовать формулы НАЙТИ с другими функциями ЕСЛИОШИБКА, ЗАМЕНИТЬ, ЛЕВСИМВ, ПРАВСИМВ, ПСТР, ДЛСТР, СУММ, ЕЧИСЛО в Excel? Рассмотрим пример, в котором будем комбинировать НАЙТИ и ЗАМЕНИТЬ. Ниже попробуем заменить слово «песня» на «поэма»:

примеры работы формул

Строка с текстом – это ячейка с предложением, которое содержит заменяемое слово. На месте второго аргумента вкладываем НАЙТИ для определения позиции слова «песня». Это нам потребовалось, поскольку неизвестно точное расположение подстроки «песня» (с какого по счету символа начинается «песня»). Число 5 указывает на количество символов, которые будем заменять (количество букв в слове «песня»). В этом примере у нас количество символов искомого и заменяемого текста совпало, но это не обязательное условие, разница может быть любой.

Скопируем формулу до конца столбца:

количество букв в слове

В ячейке В21 мы так же заменили значение, а ниже у нас возвратились ошибки, поскольку в искомых текстах не было найдено заданного условием слова. Для корректного отображения результата укажем, что при ошибке пусть отображается то же предложение из колонки А (без изменений). Для этого используем ЕСЛИОШИБКА. Первым её аргументом будет вся предыдущая формула, а вторым – ячейка из колонки А:

ЕСЛИОШИБКА

В столбце В на месте ошибки получены идентичные предложения из столбца А.

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

ЛЕВСИМВ

Сначала формула НАЙТИ возвратила нам значение «4» — это позиция искомого символа. НАЙТИ – 1 = 3. Затем ЛЕВСИМВ извлек три символа в левую сторону – rit. Копируем формулу до конца столбца:

извлек три символа

Теперь определим следующую задачу: нужно извлечь имя домена. Для её реализации используем дополнительно функцию ПСТР. ПСТР позволит рассмотреть подстроку из любого места до конца. Приставка +1 укажет, что извлечение происходит со следующего символа от @. При этом нам нужно указать на месте третьего аргумента число, которое, как мы уверенны, будет точно больше длины текстовой строки. В этом примере используем 50 (вряд ли существует электронная почта, имя которой содержит более 50 знаков):

ПСТР

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

ДЛСТР и ПРАВСИМВ

Копируем формулу до конца столбца и получаем результат:

формулу до конца

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

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

ЕЧИСЛО ИСТИН

Скопируем формулу до конца столбца и проверим результат работы:

результат

Как видим, напротив текста, где было искомое значение «gmail.com», мы получили результат ИСТИНА. Формула, приведенная выше, оценивает содержимое ячейки. У некоторых пользователей, возможно, промелькнула мысль использовать логическую ЕСЛИ, но она ищет идентичное совпадение заданного искомого текста, «gmail.com» равно «gmail.com», а нам нужно «gmail.com равно «номер позиции». Тогда ЕЧИСЛО определит наличие или отсутствие числа, и возвратит результат.

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

подсчитает количество результатов

Можно сделать формулу еще сложнее, использовав дополнительно ЕСЛИ и настроив нужные ответы. В примере в таблице предоставлены год модели и номер стиля. ЕСЛИ оценивает логический оператор и возвратит ответ «Да» в случае возвращения ИСТИНА и «Нет» в случае возвращения ЛОЖЬ:

ЕСЛИ НАЙТИ ИСТИНА

На этот раз мы добавили третий аргумент – число 5, которое указывает с какой позиции начинается поиск. Поскольку год модели также содержит искомое значение «2», мы уточнили, что поиск должен происходить точно с номера стиля. Копируем формулу до конца столбца и проверим, как сработала формула. Фраза «Да» появилась напротив тех ячеек, номер стиля которых равен 2:

поиск точно с номера стиля

Теперь рассмотрим пример, где нам надо подсчитать сумму найденных значений одновременно. Для этого потребуется добавить СУММ. В ячейке А100 у нас три элемента – буквенный код, числовой код, слово. Нам нужно узнать, есть ли среди первого элемент BS, среди второго число 5 и среди третьего слово “new”. Поскольку искомый текст теперь содержит три значения, а не один, как ранее, он является массивом, который нам нужно поместить в скобки {}:

НАЙТИ СУММ

Сейчас содержимое в скобках – это массив из трёх элементов. То есть, нам нужно найти эти значения в ячейке А100. Формула три раза произведет поиск элементов по кругу по каждом из них. Затем добавляем адрес ячейки для поиска А100. Построенную формулу вкладываем в ЕЧИСЛО. На этом этапе возвращаемым результатом будут «ЛОЖЬ,ИСТИНА,ИСТИНА». А нам нужно преобразовать их в числа. Для этого к ЕЧИСЛО добавляем приставку «*1».ИСТИНА*1 равно 1, ЛОЖЬ*1 равно 0:

преобразовать в числа

Теперь нам осталось лишь сосчитать данные. Для этого вкладываем то, что у нас получилось в СУММ, нажимаем Enter:

сосчитать данные СУММ

Применяем построенную формулу по всему списку:

успешно найдено

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

В ячейке А101 совпадение только по одному элементу BS, сумма элементов равна 1.

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

Содержание

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

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

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

Синтаксис

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


Функция

НАЙТИ(

)

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

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

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


НАЙТИ

(

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

;

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

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


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

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


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

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

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

.


Нач_позиция

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

нач_позиция

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

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

Функция

НАЙТИ()

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

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

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

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

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

и

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

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

Примеры

Формула

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

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

к

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

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

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

Первый канал

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

К

.

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

А2

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

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

. Формула

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

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

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

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

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

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

.

Функция

НАЙТИ()

vs

ПОИСК()

Функция

НАЙТИ()

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

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

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

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

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

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

ПОИСК()

.

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

ЛЕВСИМВ()

,

ПРАВСИМВ()

и

ПСТР()

Функция

НАЙТИ()

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

ЛЕВСИМВ()

,

ПРАВСИМВ()

и

ПСТР()

.

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

А2

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

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

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

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

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

СЖПРОБЕЛЫ()

.

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

Что делает эта функция?

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

Когда искомое найдено, отображается его позиция в тексте в виде числа. Если текст содержит более одного вхождения, выводится позиция первого.

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

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

Синтаксис

=НАЙТИ(ИскомыйТекст,СтрокаВКоторойИщем,СтартоваяПозиция)

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

См. Функция ПОИСК

Функция НАЙТИ – примеры

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

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

Найти заглавные буквы (кириллицы и латиницы)

=СЧЁТ(НАЙТИ({"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

Найти заглавные английские буквы

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

Помогут составить такую формулу функция СЧЕТ и функция СИМВОЛ:

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

Формула также вернет ИСТИНА или ЛОЖЬ.

Важно: формула массива вводится без фигурных скобок сочетанием клавиш Ctrl+Shift+Enter.

Найти заглавные русские буквы

Формула аналогична предыдущей, разница лишь в диапазоне символов – от 192 до 223:

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

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

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

Найти числа/цифры в тексте Excel

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

Понравилась статья? Поделить с друзьями:
  • Как составить доверенность на счет
  • Как составить жалобу на судью в квалификационную коллегию судей образец
  • Как найти площадь формула листа
  • Как найти номер телефона во владикавказе
  • Как составить тренировки для набора массы мужчине