Возможности !SEMTools

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

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

Найти цифры/числа в ячейках
Найти цифры в ячейке — желаемый результат

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

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

Цифры – это собирательное понятие, включающее в себя целый десяток символов. Чтобы обнаружить, содержит ли ячейка цифры, нужно сделать 10 проверок — по 1 на каждую цифру — 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

Один из примеров такого “подхода в лоб” использован в описании функции ЕСЛИ на этом сайте.

Но есть ли способ заменить 10 проверок 1 проверкой, которая включала бы их все?  

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

Формула для определения цифр в ячейке

Формула ниже вернёт ИСТИНА или ЛОЖЬ, не самый простой и запоминающийся синтаксис, однако отлично справляется с задачей.

=СЧЁТ(ПОИСК({1:2:3:4:5:6:7:8:9:0};A1))>0

Синтаксис функции тот же, что и для поиска кириллицы или латиницы в тексте.

Найти несколько чисел формулой

Например, нужно найти чётные цифры, или найти в тексте все года от 2010 до 2025.

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

Ищем чётные цифры:

=СЧЁТ(ПОИСК({2:4:6:8:0};A1))>0

Ищем числовые последовательности любой длины:

=СЧЁТ(ПОИСК({01:02:03:911:112};A1))>0

Макрос “Обнаружить цифры” в !SEMTools

Пожалуй, наиболее простое решение, доступное после подключения !SEMTools к Excel. Копируем исходный столбец, применяем макрос и получаем результат на месте.

Найти цифры в текстовых ячейках Excel с !SEMTools

Как в Excel из всех цифр найти только определённые нужные цифры

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

Найти нужные цифры с помощью регулярных выражений в !SEMTools

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

Более того, можно не только найти, но и извлечь числа из текста. Например, числа с дробной частью и без:

Находим и извлекаем числа с плавающей запятой (точкой) и единицей измерения
Находим и извлекаем числа с плавающей запятой (точкой) и единицей измерения

Найти определённые отдельные слова-числа в тексте

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

На примере ниже мы ищем 210 как отдельное слово, при этом пропуская числа, содержащие его (например, 2106, 2107, 2108…).

Найти конкретные отдельные числа в тексте в Excel
Ищем отдельно стоящее число в тексте

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

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

Заключение

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

Столкнулись с необходимостью найти цифры в ячейках Excel?
Скачайте !SEMTools и решите эту и сотни других задач за пару кликов!

Эта статья также доступна на EN

2 комментария:

Как извлечь только номер документа без даты и времени? “Передача товаров 901 от 25.06.2024 16:00:00”

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

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

*