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

Вход

Регистрация

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

 

= Мир MS Excel/Формула поиска значений в тексте по образцу - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Формула поиска значений в тексте по образцу (Формулы/Formulas)
Формула поиска значений в тексте по образцу
Archangel1408 Дата: Четверг, 09.07.2015, 23:02 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Всем привет. Подскажите, нужна формула, которая будет искать значения определенного формата в столбце и возвращать их в соседнюю колонку. Образец во вложении, думаю там все понятно - нужно найти кадастровые номера в столбце А и вынести их в колонку B,если в ячейке 2 кад. номера, выносить оба. Заранее спасибо

[p.s.] если это как-то поможет...
К сообщению приложен файл: 2828234.xlsx (10.5 Kb)


Сообщение отредактировал Archangel1408 - Четверг, 09.07.2015, 23:05
 
Ответить
СообщениеВсем привет. Подскажите, нужна формула, которая будет искать значения определенного формата в столбце и возвращать их в соседнюю колонку. Образец во вложении, думаю там все понятно - нужно найти кадастровые номера в столбце А и вынести их в колонку B,если в ячейке 2 кад. номера, выносить оба. Заранее спасибо

[p.s.] если это как-то поможет...

Автор - Archangel1408
Дата добавления - 09.07.2015 в 23:02
vikttur Дата: Четверг, 09.07.2015, 23:11 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

Код
=ПСТР(A1;ПОИСК("??:??:??????:???";A1);16)
 
Ответить
Сообщение
Код
=ПСТР(A1;ПОИСК("??:??:??????:???";A1);16)

Автор - vikttur
Дата добавления - 09.07.2015 в 23:11
_Boroda_ Дата: Четверг, 09.07.2015, 23:12 | Сообщение № 3
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Так нужно?
Код
=ПСТР(A1;ПОИСК(":";A1)+2;ПОИСК("Ста";A1)-ПОИСК(":";A1)-3)

Так выведет и в том случае,
если в ячейке 2 кад. номера, выносить оба
К сообщению приложен файл: 2828234_1.xlsx (11.0 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеТак нужно?
Код
=ПСТР(A1;ПОИСК(":";A1)+2;ПОИСК("Ста";A1)-ПОИСК(":";A1)-3)

Так выведет и в том случае,
если в ячейке 2 кад. номера, выносить оба

Автор - _Boroda_
Дата добавления - 09.07.2015 в 23:12
gling Дата: Четверг, 09.07.2015, 23:22 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2525
Репутация: 678 ±
Замечаний: 0% ±

2010
Если текст всегда такой, можно без формул через Ctrl+H. Скопировать данные в столбец В--Ctrl+H--найти "статус*"--заменить --пусто--заменить всё и еще раз найти "*участок: "--заменить--пусто--заменить все. Выделенным должен оставаться диапазон, куда вставили скопированное (столбец В).Останется только номер из первой строки.


ЯД-41001506838083

Сообщение отредактировал gling - Четверг, 09.07.2015, 23:24
 
Ответить
СообщениеЕсли текст всегда такой, можно без формул через Ctrl+H. Скопировать данные в столбец В--Ctrl+H--найти "статус*"--заменить --пусто--заменить всё и еще раз найти "*участок: "--заменить--пусто--заменить все. Выделенным должен оставаться диапазон, куда вставили скопированное (столбец В).Останется только номер из первой строки.

Автор - gling
Дата добавления - 09.07.2015 в 23:22
Archangel1408 Дата: Четверг, 09.07.2015, 23:25 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Так выведет и в том случае,

=ПСТР(A1;ПОИСК("??:??:??????:???";A1);16)


да только одно значение находит, первое
 
Ответить
Сообщение
Так выведет и в том случае,

=ПСТР(A1;ПОИСК("??:??:??????:???";A1);16)


да только одно значение находит, первое

Автор - Archangel1408
Дата добавления - 09.07.2015 в 23:25
vikttur Дата: Пятница, 10.07.2015, 00:51 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

Для двух:
Код
=СЖПРОБЕЛЫ(ПСТР(A1;ПОИСК("??:??:??????:???";A1);16)&ЕСЛИ(ЕЧИСЛО(ПОИСК("??:??:??????:???";ПСТР(A1;100;999)));", "&ПСТР(A1;ПОИСК("??:??:??????:???";ПСТР(A1;100;999))+99;16);""))


Сообщение отредактировал vikttur - Пятница, 10.07.2015, 00:53
 
Ответить
СообщениеДля двух:
Код
=СЖПРОБЕЛЫ(ПСТР(A1;ПОИСК("??:??:??????:???";A1);16)&ЕСЛИ(ЕЧИСЛО(ПОИСК("??:??:??????:???";ПСТР(A1;100;999)));", "&ПСТР(A1;ПОИСК("??:??:??????:???";ПСТР(A1;100;999))+99;16);""))

Автор - vikttur
Дата добавления - 10.07.2015 в 00:51
ikki Дата: Пятница, 10.07.2015, 02:45 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
из пушки по воробьям - UDF.
[vba]
Код
Function f$(s$)
     Dim re As Object, m As Object
     Set re = CreateObject("vbscript.regexp"): re.Pattern = "\d+:\d+:\d+:\d+": re.Global = True
     Set m = re.Execute(s): For i = 0 To m.Count - 1: f = Chr(10) & f & m(i): Next
     f = Mid(f, 2)
End Function
[/vba]
но зато найдет любое количество :)
да и на листе проще использовать. :p
К сообщению приложен файл: 2828234.xlsm (16.6 Kb)


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki


Сообщение отредактировал ikki - Пятница, 10.07.2015, 02:50
 
Ответить
Сообщениеиз пушки по воробьям - UDF.
[vba]
Код
Function f$(s$)
     Dim re As Object, m As Object
     Set re = CreateObject("vbscript.regexp"): re.Pattern = "\d+:\d+:\d+:\d+": re.Global = True
     Set m = re.Execute(s): For i = 0 To m.Count - 1: f = Chr(10) & f & m(i): Next
     f = Mid(f, 2)
End Function
[/vba]
но зато найдет любое количество :)
да и на листе проще использовать. :p

Автор - ikki
Дата добавления - 10.07.2015 в 02:45
AndreTM Дата: Пятница, 10.07.2015, 07:01 | Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 500 ±
Замечаний: 0% ±

2003 & 2010
ikki, если уж делать "круть" - то до конца:
[vba]
Код
Function f$(s$)
        Dim m As Object
        With CreateObject("vbscript.regexp")
            .Pattern = "\d+:\d+:\d+:\d+": .Global = True: Set m = .Execute(s)
           ' f = iif(m.Count > 0, Join(m, vbCr), "")
        End With
End Function
[/vba] :D

P.S. 2ikki Да, что-то это я не туда посмотрел... Ввёл ты меня в заблуждение неиспользованием .Item :)
А с авой всё просто - ну лень мне снова подбирать вырезку нужного формата с нужными размерами, а старая - не принимается


Skype: andre.tm.007
Donate: Qiwi: 9517375010


Сообщение отредактировал AndreTM - Пятница, 10.07.2015, 12:10
 
Ответить
Сообщениеikki, если уж делать "круть" - то до конца:
[vba]
Код
Function f$(s$)
        Dim m As Object
        With CreateObject("vbscript.regexp")
            .Pattern = "\d+:\d+:\d+:\d+": .Global = True: Set m = .Execute(s)
           ' f = iif(m.Count > 0, Join(m, vbCr), "")
        End With
End Function
[/vba] :D

P.S. 2ikki Да, что-то это я не туда посмотрел... Ввёл ты меня в заблуждение неиспользованием .Item :)
А с авой всё просто - ну лень мне снова подбирать вырезку нужного формата с нужными размерами, а старая - не принимается

Автор - AndreTM
Дата добавления - 10.07.2015 в 07:01
ikki Дата: Пятница, 10.07.2015, 08:55 | Сообщение № 9
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
Андрей, ессно - так не будет работать.
m - не массив, а объект.
а Join так капризен...

[offtop]ты зачем усы сбрил аву поменял? таких сатурнов только на этом форуме штук пять...[/offtop]


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki


Сообщение отредактировал ikki - Пятница, 10.07.2015, 09:04
 
Ответить
СообщениеАндрей, ессно - так не будет работать.
m - не массив, а объект.
а Join так капризен...

[offtop]ты зачем усы сбрил аву поменял? таких сатурнов только на этом форуме штук пять...[/offtop]

Автор - ikki
Дата добавления - 10.07.2015 в 08:55
Archangel1408 Дата: Пятница, 10.07.2015, 12:20 | Сообщение № 10
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
AndreTM или ikki, куда вставить этот код? (Представьте, что объясняете эту дереву) Просто в Экселе я не работал никогда особо, попробовал создать макрос и вставить туда - выдаёт ошибку Compile Error: Expected variable or procedure, not module. :(
 
Ответить
СообщениеAndreTM или ikki, куда вставить этот код? (Представьте, что объясняете эту дереву) Просто в Экселе я не работал никогда особо, попробовал создать макрос и вставить туда - выдаёт ошибку Compile Error: Expected variable or procedure, not module. :(

Автор - Archangel1408
Дата добавления - 10.07.2015 в 12:20
ikki Дата: Пятница, 10.07.2015, 12:26 | Сообщение № 11
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
Alt+F11, вставить стандартный модуль (Insert-Module), в него - функцию.

если открыто несколько файлов и/или есть личная книга макросов - то необходимо перед вставкой модуля обратить внимание, какая именно книга активна в окне редактора VBE - смотрим в окно проекта (Project Window). если неактивно - View - Project Explorer

[offtop]
старая - не принимается
такая же фигня. но мне за отдельную плату обещали посодействовать... вот, коплю бабки...[/offtop]


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki


Сообщение отредактировал ikki - Пятница, 10.07.2015, 12:27
 
Ответить
СообщениеAlt+F11, вставить стандартный модуль (Insert-Module), в него - функцию.

если открыто несколько файлов и/или есть личная книга макросов - то необходимо перед вставкой модуля обратить внимание, какая именно книга активна в окне редактора VBE - смотрим в окно проекта (Project Window). если неактивно - View - Project Explorer

[offtop]
старая - не принимается
такая же фигня. но мне за отдельную плату обещали посодействовать... вот, коплю бабки...[/offtop]

Автор - ikki
Дата добавления - 10.07.2015 в 12:26
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Формула поиска значений в тексте по образцу (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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