Найти в Дзене
Андрей Сухов

Как привести телефонные номера к одному виду

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

Телефонные номера отформатированы с помощью числового формата
Телефонные номера отформатированы с помощью числового формата

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

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

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

Телефонный номер в виде последовательности цифр без разделителей
Телефонный номер в виде последовательности цифр без разделителей

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

Поможет мне в этом функция ПОДСТАВИТЬ. Она позволяет заменить существующий текст на новый.

У функции три аргументы. Первый - это ячейка с текстом, в котором мы производим поиск. Далее указывается искомый текст - в первую очередь я буду искать пробел. Не забываем, что текст в Excel всегда указывается в двойных кавычках. И третий аргумент - это текст, которым нужно заменить искомый. Мы его меняем на пустоту, то есть просто вводим две двойные кавычки.

Функция ПОДСТАВИТЬ
Функция ПОДСТАВИТЬ

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

В телефонных номерах исчезли пробелы
В телефонных номерах исчезли пробелы

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

Ищем и заменяем тире
Ищем и заменяем тире

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

Полная формула, удаляющая пробелы, тире и скобки
Полная формула, удаляющая пробелы, тире и скобки

Получили довольно длинную формулу, состоящую из вложенных функции ПОДСТАВИТЬ. Ее результатом будет число без разделителей, но еще содержащее код страны. В моем случае это либо 8 либо +7.

В телефонных номерах еще остался код страны
В телефонных номерах еще остался код страны

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

Функция ПРАВСИМВ
Функция ПРАВСИМВ

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

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

Умножаем на единицу
Умножаем на единицу

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

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

Ссылки на мои ресурсы по Excel

YouTube-канал по Excel и Word

Телеграм

Авторские курсы

Наука
7 млн интересуются