Тема: Текст без символов форматирования

Добрый вечер уважаемые коллеги, как получить текст из ячейки таблицы без символов форматирования?
Метод objEnt.GetText(n, c) возвращает значение  {\C4;Свайное основание}, как получить только текстовое значение строки?

(изменено: Agens -, 29 августа 2016г. 18:41:12)

Re: Текст без символов форматирования

отрезать левую часть... или разбить split-ом на массив...

Re: Текст без символов форматирования

Как быть с такой строкой {\fTimes New Roman|b0|i0|c204|p18;\C7;тест}. Split по разделителю ";" лишнего нарежет.?Как идея Right при поиске inStrRev..Но тоже есть шанс отрезать лишнего - залезть в нужный текст к примеру {\fTimes New Roman|b0|i0|c204|p18;\C7;-тест; тест 2}... {\fTimes New Roman|b0|i0|c204|p18;\C7;тест\fTimes New Roman|b0|i0|c0|p18;; \fTimes New Roman|b0|i0|c204|p18;тест 2\fTimes New Roman|b0|i0|c0|p18;; \fTimes New Roman|b0|i0|c204|p18;тест 3}

Re: Текст без символов форматирования

Коллеги - неужели больше никаких идей!

Re: Текст без символов форматирования

я вроде взрывал текст, но иногда его приходилось несколько раз взрывать. но это было давно...

Re: Текст без символов форматирования

Не претендую на оригинальность, но раз других идей нет то..

Public Function StrReplaceFormat(str As String)
  Dim strArr  As Variant
  Dim strArrW  As Variant
  Dim str_itog As String
  Dim stfindOk As String
  Dim strfindWOk As String
  Dim strfind
  Dim strfindW
  str_itog = ""
  If InStr(str, "{") > 0 And InStrRev(str, "}") > 0 Then
      str = Replace(str, "{", "")
      str = Replace(str, "}", "")
      str = Replace(str, "\P", "")
      strArr = Split(str, ";")
      stfindOk = ""
       For Each strfind In strArr
        If InStr(strfind, "\C") = 0 _
          And InStr(strfind, "\T") = 0 _
          And InStr(strfind, "\f") = 0 _
          And InStr(strfind, "\F") = 0 Then
          stfindOk = strfind
          If InStr(stfindOk, "\W") > 0 Then
             strArrW = Split(stfindOk, " ")
             strfindWOk = ""
            For Each strfindW In strArrW
               If InStr(strfindW, "\W") = 0 Then
                 strfindWOk = strfindWOk + " " + strfindW
               End If
            Next strfindW
             stfindOk = strfindWOk
          End If
         str_itog = str_itog + " " + stfindOk
        End If
       Next strfind
   Else
    str_itog = str
  End If
       StrReplaceFormatColor = str_itog
End Function

Re: Текст без символов форматирования

Решение представлено здесь
https://www.caduser.ru/forum/topic43895.html