Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
VBA удалить часть текста по условию (UDF)
 
Добрый день,
Пишу функцию, чтобы удалять часть текста из ячейки по условию
Условие: удалить с начала строки все до первого вхождения } включительно
Например,
Из текста в ячейке {груша}{новый сезон}{2013} должно остаться {новый сезон}{2013}
Из текста в ячейке {клубника турецкая}{хорошая} должно остаться {хорошая}
Иными словами текст в первых фигурных скобках должен исчезнуть.

Пишу так:
Function MyText(text$)
MyText = Right$(text, InStrRev(text, "}" ;) )

Выдает ошибку. Видимо, т.к. где-то конфликт текста и матем. символов.
Если кто-то сможет помочь, было бы замечательно.
 
Код
Function spl$(txt$)
spl = Right(txt, Len(txt) - InStr(1, txt, "}"))
End Function
 
Код
Function MyText(text$)
 MyText = Right(text, Len(text) - InStr(1, text, "}" ;) )
End Function
 
может все проще?
Код
Function MyText(text$)
    Dim lPos As Long
    lPos = InStr(text, "}")
    If lPos Then MyText = Mid$(text, lPos + 1)
End Function
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
можно так, но без обработки ошибок:
Код
Function MyText(text$)
    MyText = Split(text, "}", 2)(1)
End Function
 
спасибо всем! вопрос закрыт с вашей помощью
Страницы: 1
Читают тему (гостей: 1)