AJUDA COM REPLACE

JORGESALES 08/03/2017 19:37:56
#472300
Pessoal boa noite, será que alguém saberia como resolver este problema?
Tenho um texto que é mais ou menos assim:
[txt-color=#0000f0]ESTÁ VIAJANDO, RETORNA NO DIA 20[/txt-color] [txt-color=#8A2BE2]< 08/03/2017 18:48:54>[/txt-color]
[txt-color=#0000f0]SÓ LIGAR DEPOIS DO ALMOÇO[/txt-color] [txt-color=#8A2BE2]< 08/02/2017 12:48:54>[/txt-color]
Estou tentando fazer um Replace para tirar tudo que está entre o [Ô]<[Ô] e o [Ô]>[Ô]
o texto deveria ficar assim:
[txt-color=#0000f0]ESTÁ VIAJANDO, RETORNA NO DIA 20[/txt-color]
[txt-color=#0000f0]SÓ LIGAR DEPOIS DO ALMOÇO[/txt-color]
Tentei esses mas não acontece nada:
txtNovo = Replace(rs(11), [Ô]<*[Ô], [Ô][Ô])
txtNovo = Replace(rs(11), [Ô]<*>[Ô], [Ô][Ô])
txtNovo = Replace(rs(11), [Ô]< * >[Ô], [Ô][Ô])
txtNovo = Replace(rs(11), [Ô]< *>[Ô], [Ô][Ô])
txtNovo = Replace(rs(11), [Ô]<>[Ô], [Ô][Ô])

Ah, só pra constar, eu tentei um de cada vez....
KERPLUNK 08/03/2017 20:30:26
#472304
Eu usaria a função Split, buscando o valor do segundo item da array retornada, transformando em uma data e então pegando o dia da data.
JORGESALES 08/03/2017 20:43:22
#472307
Mas nesse caso o texto não tem apenas uma linha com [Ô]< [Ô] e [Ô] >[Ô]
Poderia dar um exemplo de como fazer?
KERPLUNK 08/03/2017 20:56:41
#472308

Dim x As Variant
x = Split(SuaVariavelContendoValor, [Ô]<[Ô])
SeuRetorno = x(0)
JORGESALES 09/03/2017 00:14:12
#472314
Está um pouco tarde, amanhã vou tentar e postar o resultado aqui, acho que terei
que fazer uma adaptação uma vez que preciso percorrer todo texto, como eu disse
antes existe vários [Ô]<[Ô] e [Ô]>[Ô] então tenho que pegar o texto antes e depois, mas
já deu pra ter uma ideia do que fazer, obrigado.
IRENKO 09/03/2017 11:14:26
#472320
Uma função antiga que o pessoal do forum ajudou-me a fazer para um replace com vários critérios e que talvez possa lhe ajudar.

Public Function ReplaceMultiplo(str As String, Procurar As String, Delimiter As String, Substituir As String) As String
Dim ArReplace As Variant
Dim i As Integer
If InStr(1, Procurar, Delimiter) = 0 Then
str = Replace(str, Procurar, Substituir)
ReplaceMultiplo = str
Exit Function
End If




ArReplace = Split(Procurar, Delimiter)

For i = 0 To UBound(ArReplace)
[ô]Str = MyReplace(Str, ArReplace(i), Substituir)
Next

ReplaceMultiplo = str
End Function

TargetTextBox.text = Replace(ReplaceMultiplo(TargetTextBox.text, Matriz(i), [Ô]|[Ô], [Ô]-[Ô]), [Ô] [Ô], [Ô][Ô])
JORGESALES 10/03/2017 23:27:37
#472366
Citação:

:
Uma função antiga que o pessoal do forum ajudou-me a .....


Muito obrigado por sua ajuda mas não tenho ideia de como usar esse código,
criei uma com o pouco conhecimento que tenho e com a dica que o Kerplunk
passou, mas só acha o primeiro valor.

Se alguém puder ajudar, sei que precisa de um laço para percorrer todo o texto
mas não consegui encontrar a linha de raciocínio para fazer....

Private Function formatObs() As String
Dim texto() As String
texto = Split(rs(11), [Ô]<[Ô])
formatObs = texto(0)
texto = Split(rs(11), [Ô]>[Ô])
formatObs = formatObs & texto(1)
End Function

Desde já agradeço a todos que possam ajudar...
MARIOANDRADE 24/05/2017 22:55:08
#474167
Resposta escolhida
Veja se este pequeno tutorial pode ajudar:
Vídeo: Usando a função Replace
JORGESALES 25/05/2017 18:25:05
#474190
Obrigado professor, ajudou bastante.

Tópico encerrado , respostas não são mais permitidas