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

Вход

Регистрация

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

 

= Мир MS Excel/Извлечение определенных строк из текста ячейки - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Извлечение определенных строк из текста ячейки (Формулы/Formulas)
Извлечение определенных строк из текста ячейки
vladimirr89 Дата: Воскресенье, 09.07.2017, 16:25 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 17
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Имеется большой текст, в котором мне нужны только определенные строчки, содержащие одно из трех значений: "руб. вместо", "рублей вместо", "цифровое значение (5000 к примеру) вместо". Эти строчки необходимо вывести в отдельную ячейку. Для примера составил отдельный файл.
К сообщению приложен файл: 564prices.xlsx(9Kb)
 
Ответить
СообщениеИмеется большой текст, в котором мне нужны только определенные строчки, содержащие одно из трех значений: "руб. вместо", "рублей вместо", "цифровое значение (5000 к примеру) вместо". Эти строчки необходимо вывести в отдельную ячейку. Для примера составил отдельный файл.

Автор - vladimirr89
Дата добавления - 09.07.2017 в 16:25
Udik Дата: Воскресенье, 09.07.2017, 17:06 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1588
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
Все найденные строки в одну ячейку? А не выйдет больше 32к знаков? И пример какой-то урезанный, там только руб. вместо.


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com


Сообщение отредактировал Udik - Воскресенье, 09.07.2017, 17:08
 
Ответить
СообщениеВсе найденные строки в одну ячейку? А не выйдет больше 32к знаков? И пример какой-то урезанный, там только руб. вместо.

Автор - Udik
Дата добавления - 09.07.2017 в 17:06
vladimirr89 Дата: Воскресенье, 09.07.2017, 17:31 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 17
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Udik, да в этом примере только такой вариант, но нужно 3 варианта, больше 32к знаков никак не выйдет, ну или хотя бы по данному примеру подскажите, дальше докумекаю
 
Ответить
СообщениеUdik, да в этом примере только такой вариант, но нужно 3 варианта, больше 32к знаков никак не выйдет, ну или хотя бы по данному примеру подскажите, дальше докумекаю

Автор - vladimirr89
Дата добавления - 09.07.2017 в 17:31
Udik Дата: Воскресенье, 09.07.2017, 18:45 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1588
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
Ну тут макрос лучше всего подтянуть. Формулами не знаю, возможно ли в принципе. Например, считываем текст в переменную, разбиваем по chr(10), потом проверяем каждую строку на наличие искомых значений, в зависимости от результата добавляем в общую строку, записываем общую строку в ячейку. :)


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com
 
Ответить
СообщениеНу тут макрос лучше всего подтянуть. Формулами не знаю, возможно ли в принципе. Например, считываем текст в переменную, разбиваем по chr(10), потом проверяем каждую строку на наличие искомых значений, в зависимости от результата добавляем в общую строку, записываем общую строку в ячейку. :)

Автор - Udik
Дата добавления - 09.07.2017 в 18:45
RAN Дата: Воскресенье, 09.07.2017, 20:49 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4605
Репутация: 925 ±
Замечаний: 0% ±

2010
[vba]
Код
Function Мяу$(txt$)
    Dim oMatches As Object, x, s$
    With CreateObject("VBScript.RegExp")
        .Global = True: .IgnoreCase = False: .MultiLine = True
        .Pattern = ".+(\d.+вместо).+$"
        Set oMatches = .Execute(txt)
        For Each x In oMatches
            s = s & Chr(10) & x
        Next
        Мяу = Mid(s, 2)
    End With
End Function
[/vba]


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение[vba]
Код
Function Мяу$(txt$)
    Dim oMatches As Object, x, s$
    With CreateObject("VBScript.RegExp")
        .Global = True: .IgnoreCase = False: .MultiLine = True
        .Pattern = ".+(\d.+вместо).+$"
        Set oMatches = .Execute(txt)
        For Each x In oMatches
            s = s & Chr(10) & x
        Next
        Мяу = Mid(s, 2)
    End With
End Function
[/vba]

Автор - RAN
Дата добавления - 09.07.2017 в 20:49
vladimirr89 Дата: Воскресенье, 09.07.2017, 21:27 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 17
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
RAN, спасибо, все подошло!
 
Ответить
СообщениеRAN, спасибо, все подошло!

Автор - vladimirr89
Дата добавления - 09.07.2017 в 21:27
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Извлечение определенных строк из текста ячейки (Формулы/Formulas)
Страница 1 из 11
Поиск:

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