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

Вход

Регистрация

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

 

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

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Извлечения текста между определенными символами
DmitriiS Дата: Вторник, 07.07.2020, 17:35 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Всем доброго дня!
Прошу Вашей помощи

В столбце А наименование материалов с приложенными документами (Исходные данные), в столбце В необходимо оставить только документы.

Все документы располагаются между символами "- ТЕКСТ;", кроме последнего

Пример во вложении
 
Ответить
СообщениеВсем доброго дня!
Прошу Вашей помощи

В столбце А наименование материалов с приложенными документами (Исходные данные), в столбце В необходимо оставить только документы.

Все документы располагаются между символами "- ТЕКСТ;", кроме последнего

Пример во вложении

Автор - DmitriiS
Дата добавления - 07.07.2020 в 17:35
DmitriiS Дата: Вторник, 07.07.2020, 17:42 | Сообщение № 2
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Пример
К сообщению приложен файл: 3281224.xlsx (11.1 Kb)
 
Ответить
СообщениеПример

Автор - DmitriiS
Дата добавления - 07.07.2020 в 17:42
Kuzmich Дата: Вторник, 07.07.2020, 18:36 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 713
Репутация: 157 ±
Замечаний: 0% ±

Excel 2003
Для вашего примера UDF
[vba]
Код
Function iPasport(cell$)
With CreateObject("VBScript.RegExp")
     .Pattern = "Паспорт.+;"
     iPasport = .Execute(cell)(0)
     .Pattern = "Документ.+$"
     iPasport = iPasport & Chr(10) & .Execute(cell)(0)
End With
End Function
[/vba]
 
Ответить
СообщениеДля вашего примера UDF
[vba]
Код
Function iPasport(cell$)
With CreateObject("VBScript.RegExp")
     .Pattern = "Паспорт.+;"
     iPasport = .Execute(cell)(0)
     .Pattern = "Документ.+$"
     iPasport = iPasport & Chr(10) & .Execute(cell)(0)
End With
End Function
[/vba]

Автор - Kuzmich
Дата добавления - 07.07.2020 в 18:36
DmitriiS Дата: Среда, 08.07.2020, 08:39 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Спасибо, но это только для данного примера,

а можно сделать его более универсальным, что б подстраивался по ситуации, при условии, что материалы и документы будут вводится единообразно
К сообщению приложен файл: _1.xlsm (17.1 Kb)
 
Ответить
СообщениеСпасибо, но это только для данного примера,

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

Автор - DmitriiS
Дата добавления - 08.07.2020 в 08:39
прохожий2019 Дата: Среда, 08.07.2020, 09:42 | Сообщение № 5
Группа: Проверенные
Ранг: Старожил
Сообщений: 1298
Репутация: 327 ±
Замечаний: 0% ±

365 Beta Channel
[vba]
Код
Function GetDocs(txt$)
    t = Split(txt, ";")
    For i = 0 To UBound(t)
        s = s & "; " & Mid(t(i), InStr(1, t(i), " - ") + 3)
    Next
    GetDocs = Mid(s, 3)
End Function
[/vba]
К сообщению приложен файл: 4285350.xlsm (18.7 Kb)
 
Ответить
Сообщение[vba]
Код
Function GetDocs(txt$)
    t = Split(txt, ";")
    For i = 0 To UBound(t)
        s = s & "; " & Mid(t(i), InStr(1, t(i), " - ") + 3)
    Next
    GetDocs = Mid(s, 3)
End Function
[/vba]

Автор - прохожий2019
Дата добавления - 08.07.2020 в 09:42
DmitriiS Дата: Четверг, 09.07.2020, 17:09 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Спасибо. Всё работает как надо
 
Ответить
СообщениеСпасибо. Всё работает как надо

Автор - DmitriiS
Дата добавления - 09.07.2020 в 17:09
  • Страница 1 из 1
  • 1
Поиск:

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