Страницы: 1
RSS
Удаление символов из середины текста
 
Доброго времени суток, форумчане! У меня такой вопрос: возможно ли удалить текст из середины предложения (или заменить его на "ничего" или пробел), если текст неодинаковый, но встречается либо между одинаковыми словами/символами/цифрами/знаками, либо только слева одинаковые слова/цифры/символы/знаки? Пример прилагаю, на самом деле таких ячеек может быть до 150-200 шт. Функция "Найти и заменить" не помогает, т.к. убираемый текст всегда различается хотя бы на один символ. Возможно это делается комбинацией функций ЛЕВСИМВ и ПРАВСИМВ друг с другом и с чем-нибудь еще? Подскажите пожалуйста, может кто встречался с такой проблемой.
 
Цитата
_КС_ написал: либо между одинаковыми словами/символами/цифрами/
......
либо только слева одинаковые слова/цифры/символы/знаки
Что это за "одинаковые  слова/цифры/символы/знаки"?
всегда ли они присутствуют? (те, которые в середине)
Изменено: Михаил С. - 10.01.2016 16:32:04
 
Доброе время суток
Если предположить, что левый столбец - то что есть, а правый - как надо, то есть исключить адрес:*г., то такая UDF-функция.
Код
Public Function CutAddress(ByVal this As String) As String
    Dim pReg As Object
    Set pReg = CreateObject("VBScript.RegExp")
    pReg.IgnoreCase = True: pReg.Pattern = " адрес:.+?г\."
    CutAddress = pReg.Replace(this, "")
End Function

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

Цитата
Что это за "одинаковые слова/цифры/символы/знаки"?
Слова, цифры, символы, знаки как в примере. Присутствуют всегда, но в разных комбинациях (часть может отсутствовать) и бывают даже с орфографическими и пунктуационными ошибками. Например, может быть указан индекс, далее область (без указания Россия или РФ), далее название города, улица, дом, квартира и точка (без указания данных пристава-исполнителя), а может быть указано сразу Россия (без индекса), город (без области), улица, дом, квартира. Мне из всего этого нужно, чтобы осталась инфо с кого взыскивается, по какому испол. листу и адрес, в формате "город, улица, дом, квартира".
 
добрый вечер,АндрейVG(только прочитал эту тему),Ваша функция GetAdress  вытягивает исходные данные в неизменном виде в столбце C,
надо скорректировать шаблон.
 
Доброе время суток
Цитата
sv2013 написал: Ваша функция GetAdress  вытягивает исходные данные в неизменном виде
Да, ну? И где доказательства? С моей стороны во вложении ;)

Цитата
_КС_ написал: но желательно как можно проще и без макросов,
В этом случае не вопрос. Изучите функции работы с текстом ПОИСК, ДЛСТР, ЛЕВСИМВ, ПРАВСИМВ - их комбинация и позволит сделать тоже самое.
 
добрый день,Андрей VG,посмотрел Ваше вложение в #6,с предложенным Вами шаблоном все понятно,-но как быть
с частью исходного текста в ячейке A3: СПИ такой-то
,а также в ячейке A4: /аао
Изменено: sv2013 - 16.11.2015 08:03:03 (изменил регистр части букв)
 
добрый деньдобавлю,что проблема,отмеченная в #7 имеется,а то ,что решает вышеуказанная пользовательская функция(столбец C),решает также обычная формула в столбце D
(я понимаю, -еще другой момент ,-нужны ли создателю темы пользовательские функции)
Код
=ЗАМЕНИТЬ(A3;НАЙТИ("адрес";A3);НАЙТИ("г.";A3)-НАЙТИ("адрес";A3)+1;"")
 
Цитата
sv2013 написал: ,а также в ячейке A4: /аао
А, ну, да. Хвоста слона я и не заметил ;) . Спасибо за науку!
 
Спасибо большое за советы, очень пригодились в работе. Извиняюсь за поздний ответ, не было возможности раньше. Всех с праздниками!
Страницы: 1
Читают тему
Наверх