Страницы: 1
RSS
Полностью удалить слово из ячейки, если в нем содержится символ
 
Друзья, нужна Ваша помощь в решении задачки!

Необходимо полностью удалить слово из ячейки, если в нем содержится символ.

В ячейке может находиться словосочетание. В таком случае нужно удалить только то слово, в котором содержится признак-символ.

Подробнее в прикрепленном файле.

Заранее всем огромное спасибо!
 
Код
=ЕСЛИОШИБКА(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2;СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(ЛЕВСИМВ(B2;НАЙТИ("©";B2));" ";ПОВТОР(" ";100));20));"");"  ";" ");B2)
 
Ещё вариант
Код
=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(B2;ЕСЛИОШИБКА(ФИЛЬТР.XML("<t><s>"&ПОДСТАВИТЬ(B2;" ";"</s><s>")&"</s></t>";"//s[contains(., '©')]");"");""))
Изменено: Msi2102 - 13.03.2024 12:31:29
 
Цитата
удалить слово из ячейки, если в нем содержится символ
UDF
Код
Function iResult(cell$)
 With CreateObject("VBScript.RegExp")
     .Global = True
     .ignorecase = True
     .Pattern = "[А-ЯЁ]+©"
   If .test(cell) Then
     iResult = .Replace(cell, "")
   Else
     iResult = cell
   End If
 End With
End Function
Изменено: Kuzmich - 13.03.2024 13:53:40
 
Друзья, благодарю за помощь!
 
Здравствуйте Ещё одна UDF для коллекции
Код
Function enstaral$(Txt$)
Dim Tp1, j&: Const Sim$ = "*©", Pr1$ = " "
Tp1 = VBA.Split(Txt, Pr1)
    For j = 0 To UBound(Tp1)
    If Tp1(j) Like Sim Then Tp1(j) = vbNullString
    Next j
enstaral = VBA.Join(Tp1, Pr1)
End Function
Страницы: 1
Наверх