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

 

maves

Пользователь

Сообщений: 5
Регистрация: 15.01.2020

Добрый день! Нужно поменять из основного формата, чтобы номера телефонов отображались в виде: +7 (999) 999-99-99. Формат ячеек использовать нельзя, так как при загрузке файла по месту требования, формат файла теряется и номера остаются набраны в первоначальном виде. Файл прилагается.

Изменено: maves15.01.2020 11:32:08

 

Mershik

Пользователь

Сообщений: 8277
Регистрация: 03.12.2015

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

Не бойтесь совершенства. Вам его не достичь.

 

maves

Пользователь

Сообщений: 5
Регистрация: 15.01.2020

Спасибо. Да они всегда вбиваются по разному, разными людьми. Поэтому и хотелось бы автоматически их как-то преобразовать в один формат вида +7 (999) 999-99-99
Прикрепила файл с различными вариантами

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

#4

15.01.2020 12:14:51

в соседний столбец протянуть скопировать вставить как значения в основной столбец

Код
=ТЕКСТ(--ПРАВБ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(I3;"-";"");"(";"");")";"");"+";"");" ";"");10);"+7 (000) 000-00-00")

Лень двигатель прогресса, доказано!!!

 

maves

Пользователь

Сообщений: 5
Регистрация: 15.01.2020

Спасибо за формулу.

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

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

#6

15.01.2020 12:26:26

Цитата
maves написал:
А можно ли в этом же столбце как то заменить.

можно но это уже макрос

Лень двигатель прогресса, доказано!!!

 

Polkilo

Пользователь

Сообщений: 87
Регистрация: 24.01.2019

maves, учтите, после +7 пробела нет, если он нужен, то оберните еще раз в ПОДСТАВИТЬ и замените «(» на » («

 

maves

Пользователь

Сообщений: 5
Регистрация: 15.01.2020

#8

15.01.2020 12:31:32

Цитата
Сергей написал:
можно но это уже макрос

А Вы сможете написать?

 

Михаил Лебедев

Пользователь

Сообщений: 2856
Регистрация: 17.01.2013

#9

15.01.2020 12:38:09

Цитата
maves написал:
А Вы сможете написать?
Цитата
Сергей написал:
можно но это уже макрос

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

PS
Еще формула

Код
="+7-"&ТЕКСТ(ПСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(I3;"+";"");"(";"");")";"");"-";"");" ";"");2;30);"000-000-00-00")

Прикрепленные файлы

  • Торговые точки.xlsx (25.34 КБ)

Изменено: Михаил Лебедев15.01.2020 12:55:39
(Загрузил файл)

Всё сложное — не нужно. Всё нужное — просто /М. Т. Калашников/

 

Polkilo

Пользователь

Сообщений: 87
Регистрация: 24.01.2019

#10

15.01.2020 13:19:58

maves, проверяйте

Код
Sub ololo()
Dim i As Long
Dim MyPhone As String

For i = 3 To ThisWorkbook.Sheets("Форма").Cells(Rows.Count, 9).End(xlUp).Row 'Крутим цикл по 9 столбцу за исключением шапки
    MyPhone = OnlyNumbers(ThisWorkbook.Sheets("Форма").Cells(i, 9)) 'Оставляем в номере только цифры
    If Len(MyPhone) >= 10 Then
        MyPhone = Right(MyPhone, 10) 'забираем последние 10 символов
        MyPhone = "+7 (" & Mid(MyPhone, 1, 3) & ") " & Mid(MyPhone, 4, 3) & "-" & Mid(MyPhone, 7, 2) & "-" & Mid(MyPhone, 9, 2) 'Сцепляем
        ThisWorkbook.Sheets("Форма").Cells(i, 9) = MyPhone 'выводим на лист
    End If
Next

End Sub

Function OnlyNumbers(ByVal MyString As String) As String
Dim i As Long
Dim Numbers As String

If Len(MyString) >= 1 Then
    For i = 1 To Len(MyString)
        If IsNumeric(Mid(MyString, i, 1)) Then
            Numbers = Numbers & Mid(MyString, i, 1)
        End If
    Next
    OnlyNumbers = CStr(Numbers)
End If

End Function

Изменено: Polkilo15.01.2020 13:21:19

 

Вар.2

Всё сложное — не нужно. Всё нужное — просто /М. Т. Калашников/

 

maves

Пользователь

Сообщений: 5
Регистрация: 15.01.2020

Всем спасибо за ответы!

Изменено: maves15.01.2020 13:45:30
(Неправильное использование цитат)

 

А если номер вбит по ошибке без префикса +7 или 8, то ни одно решение выше не работает, что привести к единому формату +7(000)000-00-00 или 8(000)000-00-00
Оговорка: макрос от

Polkilo

работает, но

Формула от

Сергей

не приводит к форме номера без префикса +7 или 8. Такое часто бывает
Макрос от

Михаил Лебедев

то же, не приводит к форме номера без префикса +7 или 8. Такое часто бывает

Макрос от

Polkilo

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

Что бы добить тему до готового решения, нужно:
— иметь возможность выбрать диапазон
— иметь возможность выбрать формат: +7(000)000-00-00 или 8(000)000-00-00 или 80000000000 (такой формат для всех ячеек, иначе с + формула считается)

Изменено: RUSBelorus15.01.2020 19:50:33

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

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

Лень двигатель прогресса, доказано!!!

 

RUSBelorus

Пользователь

Сообщений: 110
Регистрация: 15.11.2014

#15

15.01.2020 20:27:31

Цитата
Сергей написал:
корявые вводные

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

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

RUSBelorus, тема по приведению телефонных номеров к одному виду избита на нашей планете и формулы и удф и макросы если захотеть можно найти всё  

Лень двигатель прогресса, доказано!!!

 

RUSBelorus

Пользователь

Сообщений: 110
Регистрация: 15.11.2014

#17

15.01.2020 20:38:06

Цитата
Сергей написал:
— иметь возможность выбрать диапазон- иметь возможность выбрать формат: +7(000)000-00-00 или 8(000)000-00-00 или 80000000000 (такой формат для всех ячеек, иначе с + формула считается)

Тема избита вдоль и поперек, а дальше будет мусолиться такими как Я (простите). Я говорю про законченное решение для всех и всякого. Такого нет нигде

— иметь возможность выбрать диапазон
— иметь возможность выбрать формат: +7(000)000-00-00 или 8(000)000-00-00 или 80000000000 (такой формат для всех ячеек, иначе с + формула считается)

PS сам пользуюсь приведением телефонов к формату и знаю о чем говорю.

Изменено: RUSBelorus15.01.2020 20:39:10

 

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

Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл

 

Даже если и по шаблону с любым префиксом. Все равно нет РЕШЕНИЯ выбрать диапазон и один из трех форматов телефона одновременно)

Изменено: RUSBelorus15.01.2020 20:50:07

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

#20

15.01.2020 20:49:01

Цитата
RUSBelorus написал:
PS сам пользуюсь приведением телефонов к формату и знаю о чем говорю.

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

Лень двигатель прогресса, доказано!!!

 

Так задача простая, объединить решения в одно. Не будет больше (или станет меньше на порядок) подобной

PS Получается, надеяться можно от снисхождения

Polkilo

)

Изменено: RUSBelorus15.01.2020 20:58:18

 

Kuzmich

Пользователь

Сообщений: 7998
Регистрация: 21.12.2012

#22

15.01.2020 20:59:32

UDF формат +7(000)000-00-00

Код
Public Function RgxPhone(iString As Range) As String
 Dim re As Object
 Dim tempString
  Set re = CreateObject("vbscript.regexp")
    re.Pattern = "(-|s|+|(|))"
    re.Global = True
    re.IgnoreCase = True
 tempString = re.Replace(iString, "")
 re.Pattern = "((8)|(7))(d{3})+(d{3})+(d{2})+(d{2})+"
  If re.Test(tempString) Then
   RgxPhone = re.Replace(tempString, "$1$2($4) $5-$6-$7")
    If (Left(RgxPhone, 1) <> "8") Then
        RgxPhone = "+" + RgxPhone
    Else
       RgxPhone = "+7" + Mid(RgxPhone, 3)
    End If
  End If
End Function
 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

#23

15.01.2020 21:01:00

Цитата
RUSBelorus написал: Так задача простая,

ну да все человечество с ней бъется называется искусственный интелект который будет определять все хотелки человечества и исправлять их ошибки (главное чтоб не обиделся и не помножил на ноль всех)

Лень двигатель прогресса, доказано!!!

 

Вы все усложняете. Вот все 4 формата номера, которые я постоянно встречаю от клиентов, не считаю что это искусственный интеллект:
+79250966362
  79250966362
  89250966362
    9250966362
PS только макрос

Polkilo

их все обрабатывает

а то что они могут быть в разных столбиках и это не ИК.

Изменено: RUSBelorus15.01.2020 21:41:28

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

#25

15.01.2020 23:06:19

Цитата
RUSBelorus написал: Вы все усложняете.

А Вы оптимист :)
Приходилось обрабатывать, насмотрелся. +/7/8  слева в разных вариациях — цветочки.  Номер слитно, с пробелами, с разными разделителями, номер отделен от текста пробелом, номер слитно с текстом ,экспоненциальный формат, со знаками вопроса вместо некоторых цифр…

 

Удивитесь, макрос

Polkilo

+79250966362 +7   (925) 096-63-62
79250966362 +7 (925)   096-63-62
89250966362 +7 (925)   096-63-62
9250966362 +7 (925)   096-63-62
+7(925)   096 63-62 +7 (925)   096-63-62
7-925-096-63-62 +7 (925)   096-63-62
8 9   2 5 0 9 6 6 3 6 2 +7 (925)   096-63-62
(9)(2)(5)(0)(9)6   6 3 6    2 +7 (925)   096-63-62
+79250966362 +7 (925)   096-63-62
+7+9+250+966+362 +7 (925)   096-63-62
89-2509-6636-2 +7 (925)   096-63-62
9*2*50*9*66*36*2 +7 (925)   096-63-62

PS Речь об обработке телефона 10 знаков, а не об выделении телефона из текста

Изменено: RUSBelorus15.01.2020 23:25:46

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Я писал о «всех 4-х форматах», которые Вы встречаете.
И о том, что кроме написания номера, он может быть в тексте  с другими числовыми днными (тоже, кстати, написанными «мизинцем правой ноги черех левое плечо». И обрабка таких шедевров не заканчивается написанием макроса — через время возврат к работе — «а мы еще вот такое обнаружили, доработайте, пожалуйста»

 

RUSBelorus

Пользователь

Сообщений: 110
Регистрация: 15.11.2014

#28

15.01.2020 23:29:19

Цитата
vikttur написал:
Я писал о «всех 4-х форматах», которые Вы встречаете.

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

 

Михаил Лебедев

Пользователь

Сообщений: 2856
Регистрация: 17.01.2013

#29

16.01.2020 04:55:08

Цитата
RUSBelorus написал:
Формула от  Сергей  не приводит к форме номера без префикса +7 или 8. Такое часто бывает
Макрос от  Михаил Лебедев  то же, не приводит к форме номера без префикса +7 или 8. Такое часто бывает
Макрос от  Polkilo  работает корректно, но только по первому столбцу, нет формы выбора столбца или диапазона
RUSBelorus написал:
Так задача простая, объединить решения в одно.

Вы что, и с простой задачей сами справиться не можете? :)

Прикрепленные файлы

  • Обработка номеров телефонов макросом или функцией.xlsm (36.95 КБ)

Изменено: Михаил Лебедев16.01.2020 05:18:43
(добавил файл-пример со всяким рожном)

Всё сложное — не нужно. Всё нужное — просто /М. Т. Калашников/

 

Андрей VG

Пользователь

Сообщений: 11878
Регистрация: 22.12.2012

Excel 2016, 365

#30

16.01.2020 08:13:28

Цитата
Михаил Лебедев написал:
Вы что, и с простой задачей сами справиться не можете?

Добрый день, Михаил.
А вы уверены, что он собирался? RUSBelorus, зашёл на форум как в магазин…

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

Мы спросили у колл-центров MaxiPost, InteractiveCenter и СКБ «Контур», как привести в порядок телефонные номера. Результат исследования — базовые советы по подготовке к обзвонам. С ними вы быстро уберёте из базы некорректные номера. Всё, что понадобится — Excel и пара сайтов-справочников.

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

Предварительный этап: привести номера к единому формату

Что не так. Телефоны попадают в базу через сотрудников поддержки, форму на сайте, анкеты на мероприятиях. Разные люди пишут номера по-разному, и в базе форматы перемешиваются.

  • +7987707.21.21,
  • 8(986)457834,
  • +73957072721,
  • 56.56.45.

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

Как исправить. Чтобы отформатировать телефоны, мы написали функцию PrepareNumbers для Excel. Она оставляет в номере только цифры, добавляет пропущенный «+», а потом меняет «+7» на «8». Если вы не программист, не вчитывайтесь в код, это лишнее.

Public Function PrepareNumbers(InputString As String)
   Dim i As Long, newString As String
   For i = 1 To Len(InputString)
       If IsNumeric(Mid(InputString, i, 1)) Or (i = 1 And Mid(InputString, i, 1) = «+») Then
           newString = newString & Mid(InputString, i, 1)
       End If
   Next i
   If Len(newString) = 11 And InStr(newString, 7) = 1 Then
       newString = «+» & newString
   End If
   PrepareNumbers = Replace(newString, «+7», «8», 1, 1)
End Function

Чтобы функция работала, её добавляют в файл с базой данных

Перед форматированием номеров мы делаем копию базы: если что-то пойдёт не так, контакты легко восстановить.

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

Главный трюк — потянуть за угол зелёной рамки, чтобы PrepareNumbers сработала для всей колонки

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

Убрать дубли, чтобы не звонить одному человеку несколько раз

Что не так. Номер можно написать по-разному: например, клиент оставил на сайте +7 495 787-25-67, а потом позвонил в контакт-центр, где оператор записал +74957872567. Для базы данных это разные контакты, и теперь человеку позвонят дважды.

Как исправить. Мы привели номера к единому формату, поэтому для удаления дублей подойдёт встроенный инструмент Excel.

Таблицу выделяют целиком, но инструменту «Удалить дубликаты» указывают только колонку, где номера в едином формате

Инструмент называется «Удалить дубликаты», вы найдёте его во вкладке «Данные».

Результат на живой базе: из 3795 записей 663 оказались дубликатами. Это 17,4% от общего числа.

После удаления дублей в базе осталось 3132 номера.

Исключить некорректные номера, чтобы сэкономить время операторов

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

  • номера без кода города или страны;

  • те, что выглядят нормально, но в реальности не существуют;

  • иностранные телефоны, по которым не нужно звонить.

Если исключить такие записи, операторы сэкономят время.

Как исправить. Российский телефон в полном формате — с восьмёркой в начале, кодом и локальным номером — состоит из 11 цифр. За рубежом бывает по-другому, но в этой статье мы говорим только про российских абонентов.

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

Сначала мы попросили Excel посчитать длину телефонных номеров, а потом выбрали те, где ровно одиннадцать цифр. Наши инструменты — функция «ДЛСТР» и фильтр.

После чистки в базе останутся некорректные номера. Например, Excel не знает, что сочетание цифр 8 846 384-23-41 невозможно по плану нумерации Россвязи

Номера, в которых меньше или больше 11 цифр, мы убрали в отдельный файл и попытались восстановить. Об этом в следующем разделе.

Результат на живой базе: из 3132 номеров только 2578 состоят из одиннадцати цифр. Это значит, что мы избавили операторов от 554 бесполезных звонков (17,6% от числа телефонов, которые остались в базе после удаления дублей).

К этому шагу мы удалили из базы 1217 номера (32%), осталось 2578.

Восстановить номера, чтобы сохранить абонентов

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

Как исправить. Телефонный код города или страны можно восстановить при следующих двух условиях.

  1. В базе есть город абонента.

  2. Телефон городской.

Коды городов и стран есть на сайте Ростелекома. Просто вводим на сайте город, получаем код и подставляем к номеру.

Московский номер так восстановить не получится, потому что у столицы два телефонных кода: 495 и 499

Такое восстановление номера отнимает много времени, но это единственный бесплатный способ.

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

Теперь в базе 2670 номеров.

Проставить часовые пояса, чтобы не разбудить клиента

Что не так. В России 11 часовых поясов. Когда в Москве 16:00, в Хабаровске уже спят и звонить нельзя.

Как исправить. Иногда часовой пояс добавляют в базу контактов и сортируют абонентов по времени звонка.

  1. Восточные регионы, их обзванивают утром.

  2. Часовой пояс Екатеринбурга.

  3. Часовой пояс Москвы.

В течение дня оператор переходит от одной очереди к другой, руководствуясь логикой.

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

Сайтом Россвязи неудобно пользоваться, но это первоисточник

Когда город известен, часовой пояс подскажет поисковик. Набираем «время йошкар-ола» и видим, звонить абоненту сейчас или подождать до утра. Мы сразу запишем часовой пояс клиента в базу, чтобы больше не искать.

Как привести в порядок базу номеров

  1. Привести телефоны к единому формату.
    Инструмент: Excel.
    Результат на живой базе: 3795 отформатированных номеров, с которыми удобно работать.

  2. Убрать дубли.
    Инструмент: Excel.
    Результат на живой базе: −663 дубля.

  3. Исключить «битые» номера из обзвона.
    Инструмент: Excel.
    Результат на живой базе: −554 слишком длинных или коротких номера.

  4. Восстановить номера.
    Инструмент: сайт «Ростелекома».
    Результат на живой базе: +92 номера, восстановленных из неполных контактов.

  5. Составить расписание звонков с учётом часовых поясов. Инструмент: сайт «Россвязи».

Итог на живой базе. Мы избавили операторов от 895 бесполезных звонков. Кроме того, восстановили код города для 92 номеров и получили пригодные для обзвона телефоны.

Из 3795 номеров в базе осталось 2670 (70,3%). По ним можно звонить в любой момент.

Мнение редакции может не совпадать с мнением автора. Ваши статьи присылайте нам на 42@cossa.ru. А наши требования к ним — вот тут.

Обзор функций для работы с текстом

Мы подготовили обзорное видео, где собрали полезные сочетания текстовых функций в Excel и Google таблицах.

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

Скачать файлы из этой статьи

Рабочие файлы

Сохраняйте, чтобы знать, где искать ответы на похожие задачи.

Обзор полезных текстовых функций смотрите ниже. Приятного просмотра!

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

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

В идеальном мире все данные в таблицах упорядочены и имеют одинаковый вид.

Что же касается реальной жизни — так данные немного в хаосе.

Посмотрите на вид хранения телефонов в одной из баз. Лишние символы – дефисы, пробелы, двоеточия, пояснительная бригада в виде надписей – номер телефона, сотовый, тел.

Приводим номера телефонов к единому формату в таблице

Согласитесь, это, во-первых, выглядит неопрятно, во-вторых – обрабатывать такие данные ой как не просто.

Поэтому, давайте договоримся, если мы и ведем свои базы в Excel или Google таблицах, то делаем это грамотно. Все номера в одном формате. В конце концов, Вы же не просто так эти номера собираете? Предполагается работа с этими номерами. Любому сотруднику будет удобнее ориентироваться в упорядоченной базе, плюс ко всему, по корректному списку номеров без проблем можно запустить массовую рассылку (например, в WhatsApp).

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

="+7"&ПРАВСИМВ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2;"(";"");")";"");" ";"");"-";"");" ";"");10)

Аналогичные функции применяются к данным в Google таблице.

Как извлечь домены адресов электронной почты?

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

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

Получаем только адрес домена из списка в таблице

Сочетание функций для извлечения домена: =ПРАВСИМВ(B2;ДЛСТР(B2)-ПОИСК("@";B2))

Аналогичное сочетание функций работает для Google таблиц.

Как сократить длинные ссылки?

Следующая задача, немного похожа на предыдущую. Мы запускали парсер, который собрал нам ссылки на различные источники данных. По итогу, у нас имеется список полных URL.

Получаем только адрес сайта из списка ссылок в таблице

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

Чтобы получить короткий URL воспользуемся уже знакомым сочетанием функций ПОДСТАВИТЬ(), НАЙТИ(), ДЛСТР() и ЛЕВСИМВ().

=ЛЕВСИМВ(B2;ДЛСТР(B2)-(ДЛСТР(B2)-НАЙТИ("/@";ПОДСТАВИТЬ(B2;"/";"/@";3))+1))

Аналогичное сочетание функций работает для Google таблиц.

Как перевести ФИО в сокращенный вид?

Следующая задача, скорее больше знакома менеджерам, ведущим клиентскую базу или эйчарам. Есть полная база ФИО и дата рождения.

Хотим получить сокращенную форму ФИО, а также возраст сотрудника и по возможности определить пол.

Получить сокращенную форму ФИО очень просто. Для этого используются функции СЦЕПИТЬ() и ЛЕВСИМВ().

=СЦЕПИТЬ(B2;" ";ЛЕВСИМВ(C2;1);".";ЛЕВСИМВ(D2;1);".")

Делаем сокращенный формат ФИО из списка в таблице

Как вычислить возраст по дате рождения?

Для вычисления возраста по дате рождения используется функция РАЗНДАТ(). История с функцией РАЗНДАТ() очень интересная. Вы не найдете её в справке. Более того, её нет в мастере функций, и даже при наборе вручную первых букв названия функции никакой подсказки вам не выйдет!

=РАЗНДАТ(E2;СЕГОДНЯ();"y")

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

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

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

В Google таблицах используются аналогичные функции.

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

Определить пол на 100% мы вряд ли сможем, особенно если у нас нестандартные варианты отчества, но для большей части данных – это реально. Так, самым простым вариантом, является проверка последней буквы отчества.

=ЕСЛИ(ПРАВСИМВ(D2)="ч";"М";ЕСЛИ(ПРАВСИМВ(D2)="а";"Ж";"н/о"))

Если отчество заканчивается на букву Ч, Антонович, Арсеньевич – то пол мужской, если отчество заканчивается на букву А – Сергеевна, Валерьевна – то пол женский, в противном случае пол не определен.

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

В Google таблицах все работает аналогично.

Определяем пол по отчеству в таблице

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

Получили «корявую» выгрузку с нестандартным количеством пробелов. Некорректный ручной ввод или баги выгрузки.

Удалить лишние пробелы и, тем самым привести список к корректному виду поможет функция сжатия пробелов — СЖПРОБЕЛЫ().

Убираем лишние пробелы у списка в таблице

Аналогичная функция доступна в Google таблицах.

Почему знания Excel или Google таблиц сегодня важны каждому?

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

Электронные таблицы вроде MS Excel, Google Sheets – универсальные и многофункциональные помощники, способные облегчить работу и сэкономить ваше время. С их помощью, можно без труда структурировать большие объемы информации в удобные форматы, визуализировать данные в графики и диаграммы, а также вычислять показатели и создавать отчеты.

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

Пользователи Microsoft Excel и Google таблиц уверенно решают различные многофункциональные задачи, оптимизируя рабочее время. Инструменты этих программ просты и понятны в использовании, при этом приносят колоссальное количество пользы.

О проекте BIRDYX

Мы оказываем помощь в получении полного представления о работе в программах MS Excel и Google Sheets.

На нашем YouTube канале мы регулярно публикуем видео о секретах, фишках и лайфхаках MS Excel и Google Sheets, а также делимся решениями реальных задач из практики. Там же доступен бесплатный курс «Основы Excel» для начинающих. Подписывайтесь на наш канал, там много полезной и интересной информации.

Тем, кто желает освоить MS Excel или Google Sheets в кратчайшие сроки, мы можем предложить персональные консультации онлайн в удобное время.

А также, Вы можете пройти бесплатные онлайн курсы по MS Excel с заданиями

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

В этом учебном материале по Excel мы рассмотрим примеры того как очистить и переформатировать телефонные номера

Как в Excel очистить и переформатировать телефонные номера

Основная формула

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;«(«;«»);«)»;«»);«-«;«»);» «;«»);«.»;«»)+0

Описание

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

Пояснение

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

Наконец, применяется формат телефонного номера «Пользовательский» (столбец D).
Настройка формата происходит в форме «Формат ячеек» вызывается нажатием клавиш Ctrl+1. Далее на как на скрине ниже.
Как в Excel переформатировать телефонные номера

Уловка с пробелом для удобочитаемости

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

=

ПОДСТАВИТЬ(

ПОДСТАВИТЬ(

ПОДСТАВИТЬ(

ПОДСТАВИТЬ(

ПОДСТАВИТЬ(

A1;

«(«; «»);

«)»; «»);

«-«; «»);

«»; «»);

«.»; «»)

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

Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше

Excel предоставляет специальный числовом формате, который позволяет форматирование номера в виде номера телефона. Например, можно отформатовать 10-значное число, например 5555551234, как (555) 555-1234.

  1. Выберите ячейку или диапазон, которые нужно отформатирование. Как выбрать ячейки или диапазоны?

  2. На вкладке Главная нажмите кнопку запуска диалогового окна рядом с полем Число.

    Кнопка вызова диалогового окна в группе "Число"

  3. В окне Категория выберите особый.

  4. В списке Тип выберите Телефон число.

Совет: Чтобы увидеть код числовых форматов Телефон, щелкните категорию Пользовательские и посмотрите на поле Тип. Например, код [<=9999999]###-####;(###) ###-#### используется для отображения номера телефона (555) 555-1234. Если вам не соответствует заранее созданный формат номера телефона, вы можете использовать его в качестве отправной точки для создания собственного формата. Дополнительные сведения см. в том, как создать или удалить пользовательский числовой формат.

Нужна дополнительная помощь?

Логотип Microsoft Excel на зеленом фоне

Хотите превратить цифры в таблицах в правильные номера телефонов в США с кодами городов? Вместо того, чтобы вручную вставлять дефисы и скобки, используйте параметр форматирования номера телефона в Microsoft Excel.

В Excel вы можете форматировать данные разными способами. Одно из таких форматов — для телефонных номеров в США, превращая ваши числа, такие как «5555551234», в удобочитаемый «(555) 555-1234». При желании вы можете применить это форматирование сразу к нескольким телефонным номерам.

Для начала откройте электронную таблицу в Microsoft Excel.

В своей электронной таблице выберите ячейку или ячейки, в которых у вас есть номера телефонов.

Выделите ячейки, содержащие номер телефона в Excel.

Пока ваши номера телефонов выделены, на ленте Excel вверху щелкните вкладку «Главная».

Щелкните значок "Домой" вкладка в Excel.

На вкладке «Главная» в разделе «Число» щелкните «Формат числа» (значок стрелки) в правом нижнем углу.

Нажмите "Числовой формат" в "Домой" таб.

Вы увидите окно «Форматирование ячеек». Здесь в списке «Категория» слева выберите «Особые».

Выбирать "Специальный" на "Формат ячеек" окно.

В разделе «Тип» справа нажмите «Номер телефона». Затем нажмите «ОК» внизу.

Примечание. Если вы не видите «Номер телефона» в разделе «Тип», щелкните раскрывающееся меню «Регион» и выберите «Английский (США)» или другую поддерживаемую страну.

Нажмите "Телефонный номер" в "Тип" раздел и щелкните "В ПОРЯДКЕ."

Вернувшись в электронную таблицу, все ваши номера телефонов теперь отформатированы в правильном стиле.

Выбранные ячейки отформатированы в формате номера телефона в Excel.

Если вам нужен другой формат для этих чисел, тогда в окне «Формат ячеек» выберите «Пользовательский», а затем укажите свой собственный формат.

Вот так в Microsoft Excel можно превратить обычные цифры в телефонные номера. Очень полезно!

Вам нужно добавить ноль перед числом в таблице Excel? Если так, то есть простой способ сделать это.

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