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

Вход

Регистрация

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

 

= Мир MS Excel/Выделить последний мобильный телефон из списка - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Выделить последний мобильный телефон из списка
Goblinax Дата: Среда, 04.01.2017, 17:37 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 24
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Добрый вечер знатоки екселя. Всех с наступившим новым годом.

Такая задача. В ячейче через запятую перечислены номера домашних и мобильных телефонов. Нужно вытащить последний мобильный. мобильный от домашнего отличается тем, что у второго есть (495) или (499). а у первого что то другое.
К сообщению приложен файл: 8184464.xlsx (8.4 Kb)
 
Ответить
СообщениеДобрый вечер знатоки екселя. Всех с наступившим новым годом.

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

Автор - Goblinax
Дата добавления - 04.01.2017 в 17:37
buchlotnik Дата: Среда, 04.01.2017, 18:02 | Сообщение № 2
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация: 929 ±
Замечаний: 20% ±

2010, 2013, 2016 RUS / ENG
что-то жуткое соорудил:
Код
=ЕСЛИОШИБКА(ПСТР(A2;ПРОСМОТР(999;СТРОКА($A$1:$A$998)/(ПСТР(A2;СТРОКА($A$1:$A$998);1)="(")/(ПСТР(A2;СТРОКА($A$2:$A$999);1)<>"4"));12);"")
К сообщению приложен файл: 4811696.xlsx (9.1 Kb)
 
Ответить
Сообщениечто-то жуткое соорудил:
Код
=ЕСЛИОШИБКА(ПСТР(A2;ПРОСМОТР(999;СТРОКА($A$1:$A$998)/(ПСТР(A2;СТРОКА($A$1:$A$998);1)="(")/(ПСТР(A2;СТРОКА($A$2:$A$999);1)<>"4"));12);"")

Автор - buchlotnik
Дата добавления - 04.01.2017 в 18:02
TimSha Дата: Среда, 04.01.2017, 18:24 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 627
Репутация: 94 ±
Замечаний: 0% ±

Excel 2013 Pro +
А если примитивно/поэтапно?
Взять все и из них выбрать все последние, а затем уже из них фильтром оставить/удалить по потребностям?
Код
=СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(A2;" ";ПОВТОР(" ";100));50))

Как один из многих вариантов - формульных. Но на форуме были и макросы, и польз. функции - искать надо... ;)


"Ctrl+S" - достойное завершение ваших гениальных мыслей!.. ;)
 
Ответить
СообщениеА если примитивно/поэтапно?
Взять все и из них выбрать все последние, а затем уже из них фильтром оставить/удалить по потребностям?
Код
=СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(A2;" ";ПОВТОР(" ";100));50))

Как один из многих вариантов - формульных. Но на форуме были и макросы, и польз. функции - искать надо... ;)

Автор - TimSha
Дата добавления - 04.01.2017 в 18:24
Nic70y Дата: Среда, 04.01.2017, 18:31 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 9130
Репутация: 2415 ±
Замечаний: 0% ±

Excel 2010
мобила полюбому с 9 начинается
Код
=ЕСЛИОШИБКА(ПСТР(A2;ПОИСК("\";ПОДСТАВИТЬ(A2;"(9";"\";(ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;"(9";)))/2));12);"")
вдруг правильно


ЮMoney 41001841029809
 
Ответить
Сообщениемобила полюбому с 9 начинается
Код
=ЕСЛИОШИБКА(ПСТР(A2;ПОИСК("\";ПОДСТАВИТЬ(A2;"(9";"\";(ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;"(9";)))/2));12);"")
вдруг правильно

Автор - Nic70y
Дата добавления - 04.01.2017 в 18:31
AlexM Дата: Среда, 04.01.2017, 19:57 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
Формула массива
Код
=ЕСЛИОШИБКА(ЛЕВБ(ВПР("(9*";ПРАВБ(A2;СТРОКА($1:999));1;);12);"")



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.


Сообщение отредактировал AlexM - Среда, 04.01.2017, 20:06
 
Ответить
СообщениеФормула массива
Код
=ЕСЛИОШИБКА(ЛЕВБ(ВПР("(9*";ПРАВБ(A2;СТРОКА($1:999));1;);12);"")

Автор - AlexM
Дата добавления - 04.01.2017 в 19:57
Wasilich Дата: Среда, 04.01.2017, 20:24 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
А так?
[vba]
Код
Sub ddd()
  Dim I&, N&
  For I = 2 To Range("A" & Rows.Count).End(xlUp).Row
    N = InStrRev(Cells(I, 1), "(9")
    If N <> 0 Then
       Cells(I, 4) = Mid(Cells(I, 1), N, N + 12)
    End If
  Next
End Sub
[/vba]
 
Ответить
СообщениеА так?
[vba]
Код
Sub ddd()
  Dim I&, N&
  For I = 2 To Range("A" & Rows.Count).End(xlUp).Row
    N = InStrRev(Cells(I, 1), "(9")
    If N <> 0 Then
       Cells(I, 4) = Mid(Cells(I, 1), N, N + 12)
    End If
  Next
End Sub
[/vba]

Автор - Wasilich
Дата добавления - 04.01.2017 в 20:24
AlexM Дата: Среда, 04.01.2017, 21:06 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
Ну и функция[vba]
Код
Function Mob(ячейка As String) As String
a = Split(ячейка, "(9")
Mob = IIf(UBound(a), Left("(9" & Split(ячейка, "(9")(UBound(a)), 12), "")
End Function
[/vba]



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеНу и функция[vba]
Код
Function Mob(ячейка As String) As String
a = Split(ячейка, "(9")
Mob = IIf(UBound(a), Left("(9" & Split(ячейка, "(9")(UBound(a)), 12), "")
End Function
[/vba]

Автор - AlexM
Дата добавления - 04.01.2017 в 21:06
  • Страница 1 из 1
  • 1
Поиск:

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