Сравнение текста с шаблоном в Excel

Функция ТЕКСТКАК проверяет соответствие строки заданному шаблону. В статье приведены описание, примеры и код на VBA.

Описание функции

Функция =ТЕКСТКАК(ТЕКСТ, ШАБЛОН) имеет два обязательных аргумента:

  • ТЕКСТ - строка в которой необходимо произвести сравнение по заданному шаблону.
  • ШАБЛОН, задающий сравнение текста. В шаблоне можно применять специальные обозначения:
  1.   ? - Любой отдельный знак.
  2.   * - Ноль или больше знаков.
  3.   # - Любая отдельная цифра.
  4.   [ ] - Любой отдельный знак из скобок.
  5.   [! ] - Любой отдельный знак отсутствующий в скобках

Теперь к практике. Далее привожу множество примеров использования данной функции.

Пример 1

Как найти фамилии, заканчивающиеся на букву "а"?

Решением является формула =ТЕКСТКАК(ТЕКСТ;"*а"), где символ * указывает на неограниченное количество букв и символов перед последней буквой а.

Пример 1 функции ТЕКСТКАК

Пример 2

Как привести телефонный справочник в порядок.

Используем формулу =ТЕКСТКАК(ТЕКСТ;"+# ### ###-##-##"), где знак # обозначает, что на этом месте может быть расположена любая цифра.

Пример 2 функции ТЕКСТКАК

Пример 3

Найти слова которые содержат сочетание "сто" в любой части слова

Пример 3 функции ТЕКСТКАК

Пример 4

Найти слова которые содержат сочетание "раст" или "рост" в любой части слова

Пример 4 функции ТЕКСТКАК

Пример 5

Найти слова которые содержат любое сочетание кроме "раст"

Пример 5 функции ТЕКСТКАК

Пример 6

Найти текст, который начинается с цифры

Пример 6 функции ТЕКСТКАК

Пример 7

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

Пример 7 функции ТЕКСТКАК

Код на VBA

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

Public Function ТЕКСТКАК(ТЕКСТ As String, ШАБЛОН As String) As Boolean
    ТЕКСТКАК = ТЕКСТ Like ШАБЛОН
End Function
Надстройка
VBA-Excel
Надстройка для Excel содержит большой набор полезных функций, с помощью которых вы значительно сократите время и увеличите скорость работы с программой.

Рекомендуем к прочтению

Комментарии:

comments powered by Disqus