НАЙТИ примеры функций в Excel, VBA и Google Таблицах

Скачать пример рабочей книги

Загрузите образец книги

В этом руководстве показано, как использовать Функция поиска в Excel в Excel, чтобы найти текст в тексте.

Обзор функции FIND

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

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

(Обратите внимание, как появляются входные данные формулы)

Функция НАЙТИ Синтаксис и входные данные:

= НАЙТИ (найти_текст; внутри_текст; начальное_число)

find_text - Строка текста, которую вы хотите найти.

внутри_текст - Исходная строка текста.

start_num - ПО ЖЕЛАНИЮ. Номер символа, с которого следует начать поиск. Примечание. Это изменяет только диапазон поиска, но не влияет на число, возвращаемое при обнаружении совпадения. Пример: поиск «s» в строке «suns» по умолчанию вернет 1, но если start_num установлен на 2, он вернет 4.

Что такое функция НАЙТИ?

Функция НАЙТИ в Excel пытается найти строку текста в другой текстовой строке. Если он его находит, FIND возвращает числовую позицию этой строки.

НАЙТИ чувствителен к регистру. Таким образом, «текст» НЕ будет соответствовать «ТЕКСТУ». Для поиска без учета регистра используйте функцию ПОИСК <>.

Как использовать функцию НАЙТИ

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

= НАЙТИ ("е"; "слон")

В этом случае Excel вернет число 1, потому что «e» - это первый символ в строке «elephant».

Давайте взглянем на еще несколько примеров:

Начальный номер (start_num)

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

= НАЙТИ (B3; C3)

Теперь давайте попробуем определить начальное число 2. Здесь мы видим, что FIND возвращает 3. Поскольку поиск начинается со второго символа, он пропускает первую букву «e» и находит второй:

= НАЙТИ (B3; C3; D3)

Начальный номер (start_num) Ошибки

Если вы хотите использовать стартовый номер, он должен:

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

В противном случае НАЙТИ вернет # ЗНАЧ! ошибка, как показано ниже:

Неудачные поиски возвращают #VALUE! Ошибка

Если FIND не найдет искомую строку, он вернет ошибку значения:

FIND чувствителен к регистру

В приведенном ниже примере мы ищем «abc». FIND возвращает 10, потому что он чувствителен к регистру - он игнорирует «ABC» и другие варианты:

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

Вы не можете использовать подстановочные знаки с FIND. Ниже мы ищем «? 000». При поиске по шаблону это будет означать «любой символ, за которым следуют три нуля». Но FIND буквально понимает это как «вопросительный знак, за которым следуют три нуля»:

То же самое относится и к подстановочному знаку звездочки:

Вместо этого для поиска текста с подстановочными знаками вы можете использовать функцию ПОИСК:

Как разделить имя и фамилию из ячейки с помощью FIND

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

Получение имени

Функция LEFT Excel возвращает заданное количество символов из строки, начиная слева.

Мы можем использовать его для получения имени, но, поскольку имена имеют разную длину, как мы узнаем, сколько символов нужно вернуть?

Легко - мы просто используем FIND, чтобы вернуть положение пробела между именем и фамилией, вычесть из него 1, и именно столько символов мы говорим LEFT дать нам.

Формула выглядит так:

= ЛЕВЫЙ (B3; НАЙТИ (««; B3) -1)

Получение фамилии

Функция Excel ПРАВО возвращает заданное количество символов из строки, начиная справа.

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

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

Формула выглядит так:

= ПРАВО (B3; LEN (B3) -FIND (""; B3))

Если имя содержит отчество, обратите внимание, что оно будет разделено на ячейку с фамилией.

Поиск n-го символа в строке

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

Это возможно с FIND, но нам нужно будет объединить его с парой других функций: CHAR и SUBSTITUTE.

Вот как это работает:

  • CHAR возвращает символ на основе его кода ASCII. Например, = CHAR (134) возвращает символ кинжала.
  • SUBSTITUTE перебирает строку и позволяет заменить символ на любой другой.
  • С помощью SUBSTITUTE вы можете определить номер экземпляра, что означает, что он может заменить n-е вхождение данной строки на что-нибудь еще.
  • Итак, идея состоит в том, что мы берем нашу строку и используем SUBSTITUTE для замены экземпляра символа, который мы хотим найти, на что-то еще. Мы воспользуемся CHAR, чтобы заменить его чем-то, что вряд ли будет найдено в строке, а затем воспользуемся FIND, чтобы найти эту неясную замену.

Формула выглядит так:

= НАЙТИ (СИМВОЛ (134); ПОДСТАВИТЬ (D3; C3; СИМВОЛ (134); B3))

А вот как это работает на практике:

НАЙТИ ПРОТИВ ПОИСКА

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

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

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

НАЙТИ в Google Таблицах

Функция НАЙТИ в Google Таблицах работает точно так же, как и в Excel:

Дополнительные замечания

Функция НАЙТИ чувствительна к регистру.

Функция НАЙТИ не поддерживает подстановочные знаки.

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

НАЙТИ примеры в VBA

Вы также можете использовать функцию НАЙТИ в VBA. Тип:
application.worksheetfunction.find (найти_текст, внутри_текста, начальное_число)
Для аргументов функции (find_text и т. Д.) Вы можете либо ввести их непосредственно в функцию, либо определить переменные для использования вместо них.

Вернуться к списку всех функций в Excel

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave