Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Извлечь номер телефона из ячейки в отдельный столбец - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Извлечь номер телефона из ячейки в отдельный столбец
Viktoriyaonly Дата: Суббота, 15.08.2015, 20:57 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Умные люди, помогите пожалуйста))

В произвольной форме написаны контакты клиента (например, 9222234, kerjfgkerfn@ya.ru ), email может быть в любой части текста.
Задача - составить колонку контактов с почтой и телефоном.

С контактами вроде разобралась - нашла формулу более менее подходящую, но с телефоном не получается использовать все выше предложенные варианты, т к при нахождении номера после email формула не отображает значение.
К сообщению приложен файл: 6849447.xlsx (10.8 Kb)
 
Ответить
СообщениеУмные люди, помогите пожалуйста))

В произвольной форме написаны контакты клиента (например, 9222234, kerjfgkerfn@ya.ru ), email может быть в любой части текста.
Задача - составить колонку контактов с почтой и телефоном.

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

Автор - Viktoriyaonly
Дата добавления - 15.08.2015 в 20:57
Serge_007 Дата: Суббота, 15.08.2015, 21:01 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;B1;);",";)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;B1;);",";)

Автор - Serge_007
Дата добавления - 15.08.2015 в 21:01
Viktoriyaonly Дата: Суббота, 15.08.2015, 21:27 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Serge_007, Спасибо огромное!)
а по выборке имейлов может есть что попроще для моего случая? а то длиннющая формула меня пугает)
 
Ответить
СообщениеSerge_007, Спасибо огромное!)
а по выборке имейлов может есть что попроще для моего случая? а то длиннющая формула меня пугает)

Автор - Viktoriyaonly
Дата добавления - 15.08.2015 в 21:27
Serge_007 Дата: Суббота, 15.08.2015, 21:57 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
длиннющая формула меня пугает)
Пусть не пугает. Можно сделать короче, но внешне будет так же страшно :)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
длиннющая формула меня пугает)
Пусть не пугает. Можно сделать короче, но внешне будет так же страшно :)

Автор - Serge_007
Дата добавления - 15.08.2015 в 21:57
Nic70y Дата: Воскресенье, 16.08.2015, 09:07 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 8959
Репутация: 2343 ±
Замечаний: 0% ±

Excel 2010
Код
=ПСТР(A1;(ПОИСК(" ";A1)<ПОИСК("@";A1))*ПОИСК(" ";A1)+1;МАКС((ПОИСК(" ";A1)<ПОИСК("@";A1))*99;ПОИСК(" ";A1)-2))
на 46 знаков короче :) и без ,


ЮMoney 41001841029809

Сообщение отредактировал Nic70y - Воскресенье, 16.08.2015, 09:09
 
Ответить
Сообщение
Код
=ПСТР(A1;(ПОИСК(" ";A1)<ПОИСК("@";A1))*ПОИСК(" ";A1)+1;МАКС((ПОИСК(" ";A1)<ПОИСК("@";A1))*99;ПОИСК(" ";A1)-2))
на 46 знаков короче :) и без ,

Автор - Nic70y
Дата добавления - 16.08.2015 в 09:07
Serge_007 Дата: Воскресенье, 16.08.2015, 09:11 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
на 46 знаков короче
Можно сделать короче, но внешне будет так же страшно
Я ж говорил ;)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
на 46 знаков короче
Можно сделать короче, но внешне будет так же страшно
Я ж говорил ;)

Автор - Serge_007
Дата добавления - 16.08.2015 в 09:11
МВТ Дата: Воскресенье, 16.08.2015, 10:58 | Сообщение № 7
Группа: Проверенные
Ранг: Обитатель
Сообщений: 476
Репутация: 137 ±
Замечаний: 0% ±

Excel 2007
Или так [vba]
Код
Sub tt()
Dim arr
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
arr = Split(Application.WorksheetFunction.Trim(Replace(Cells(i, 1), ",", " ")))
If UBound(arr) > 0 Then
If InStr(arr(0), "@") <> 0 Then
     Cells(i, 2) = arr(0)
     Cells(i, 3) = arr(1)
Else
     Cells(i, 2) = arr(1)
     Cells(i, 3) = arr(0)
End If
End If
Next i
End Sub
[/vba]
 
Ответить
СообщениеИли так [vba]
Код
Sub tt()
Dim arr
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
arr = Split(Application.WorksheetFunction.Trim(Replace(Cells(i, 1), ",", " ")))
If UBound(arr) > 0 Then
If InStr(arr(0), "@") <> 0 Then
     Cells(i, 2) = arr(0)
     Cells(i, 3) = arr(1)
Else
     Cells(i, 2) = arr(1)
     Cells(i, 3) = arr(0)
End If
End If
Next i
End Sub
[/vba]

Автор - МВТ
Дата добавления - 16.08.2015 в 10:58
Viktoriyaonly Дата: Воскресенье, 16.08.2015, 20:47 | Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Спасибо огромное!)
 
Ответить
СообщениеСпасибо огромное!)

Автор - Viktoriyaonly
Дата добавления - 16.08.2015 в 20:47
Hugo Дата: Воскресенье, 16.08.2015, 20:49 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3547
Репутация: 771 ±
Замечаний: 0% ±

365
По емейлам ведь давно есть решение на регэксп:
[vba]
Код
Function em(s As String)
     Dim v
     Dim EML_PTRN$
     'http://www.regular-expressions.info/regexbuddy/email.html
     EML_PTRN = "[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}"

     With CreateObject("vbscript.regexp")
         .Pattern = EML_PTRN
         .Global = True
         .IgnoreCase = True
         Set v = .Execute(s)
     End With
     em = v(0).Value
End Function
[/vba]


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеПо емейлам ведь давно есть решение на регэксп:
[vba]
Код
Function em(s As String)
     Dim v
     Dim EML_PTRN$
     'http://www.regular-expressions.info/regexbuddy/email.html
     EML_PTRN = "[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}"

     With CreateObject("vbscript.regexp")
         .Pattern = EML_PTRN
         .Global = True
         .IgnoreCase = True
         Set v = .Execute(s)
     End With
     em = v(0).Value
End Function
[/vba]

Автор - Hugo
Дата добавления - 16.08.2015 в 20:49
Aleksander777 Дата: Понедельник, 26.02.2018, 19:09 | Сообщение № 10
Группа: Пользователи
Ранг: Участник
Сообщений: 68
Репутация: 10 ±
Замечаний: 60% ±

Excel 2021
Всем привет.
Очень нужна помощь.
Нужно сделать как в файле который прикрепил - сборщик эл. почт, а мне нужно чтобы собирал телефонные номера.
На 1 листе база, а на 2-м сборщик телефонов.
Желательно чтобы поиск распространялся на телефоны которые написаны с пробелами, скобками, тире.

Заранее спасибо.
К сообщению приложен файл: FindEmails.xls (33.5 Kb)
 
Ответить
СообщениеВсем привет.
Очень нужна помощь.
Нужно сделать как в файле который прикрепил - сборщик эл. почт, а мне нужно чтобы собирал телефонные номера.
На 1 листе база, а на 2-м сборщик телефонов.
Желательно чтобы поиск распространялся на телефоны которые написаны с пробелами, скобками, тире.

Заранее спасибо.

Автор - Aleksander777
Дата добавления - 26.02.2018 в 19:09
Che79 Дата: Понедельник, 26.02.2018, 19:18 | Сообщение № 11
Группа: Друзья
Ранг: Старожил
Сообщений: 1649
Репутация: 306 ±
Замечаний: 0% ±

2013 Win, 365 Mac
Aleksander777, и Вам здравствуйте.
Создайте отдельную тему со своим вопросом согласно Правилам форума.
Учитывая, что Вы довольно категорично пишите
мне нужно чтобы
, то, Вам с большой долей вероятности сюда, хотя, возможно, я и не прав.


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

Автор - Che79
Дата добавления - 26.02.2018 в 19:18
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!