PERGAR PARTE DE UM TEXTO A DIREITA DE UMA POSICAO
Pessoal blz, seguinte tenho um textbox que contem um texto longo, e estou localizando um ponto determinado dele.
Tipo:Text1.text = [Ô]Você está logado na Cidade Digital Nova Fátima[Ô]
entao eu uso:
Text3.text = InStr(Text1.text, [Ô]Digital[Ô]) Entao tenho a posicao do que esta a esquerda dele.
Eu gostaria de pegar tudo que estivesse do lado direito entao do ([Ô]Digital[Ô]) estou tentando com a função RIGHT mas nao esta dando certo!
Text3.text = Right(Text1.text, [Ô]Digital[Ô])
Ele teria que retornar : Digital Nova Fátima
mas nao vai!
Tipo:Text1.text = [Ô]Você está logado na Cidade Digital Nova Fátima[Ô]
entao eu uso:
Text3.text = InStr(Text1.text, [Ô]Digital[Ô]) Entao tenho a posicao do que esta a esquerda dele.
Eu gostaria de pegar tudo que estivesse do lado direito entao do ([Ô]Digital[Ô]) estou tentando com a função RIGHT mas nao esta dando certo!
Text3.text = Right(Text1.text, [Ô]Digital[Ô])
Ele teria que retornar : Digital Nova Fátima
mas nao vai!
NESSE CASO é MELHOR VC UTILIZAR SPLIT
COLOCA UM CARACTER IDENTIFICADOR, E SEPARA COM SPLIT.
Não me lembro no vb6 como é porque é meio complicadinha, precisa utilizar um for/next.
mas é mais ou menos assim:
Você está logado na Cidade - Digital Nova Fátima
Primeira parte esta antes do traço, e a segunda depois.
em.net seria assim
dim texto as string=[Ô]Você está logado na Cidade - Digital Nova Fátima[Ô]
msgbox (texto.split([Ô]-[Ô]) (1))
Eita .net, é uma maravilha.
COLOCA UM CARACTER IDENTIFICADOR, E SEPARA COM SPLIT.
Não me lembro no vb6 como é porque é meio complicadinha, precisa utilizar um for/next.
mas é mais ou menos assim:
Você está logado na Cidade - Digital Nova Fátima
Primeira parte esta antes do traço, e a segunda depois.
em.net seria assim
dim texto as string=[Ô]Você está logado na Cidade - Digital Nova Fátima[Ô]
msgbox (texto.split([Ô]-[Ô]) (1))
Eita .net, é uma maravilha.
nao consegui nao!
Documentação do comando VBA Split
Nossa que coisa eu consigo achar a posicao de onde esta a palavra de ntro do texto mas nao consigo fazer com que ele pega tudo que estiver depois dela.
Dim A
A = position
Text1.Text = Right(A, 80)
Dim A
A = position
Text1.Text = Right(A, 80)
Cara, você chegou a pelo menos ver a documentação que te mostraram do Split? Ela funcionaria perfeitamente no seu caso.
Se você quiser mesmo usar o Right, você terá que seguir as seguintes etapas:
1 - Usar a função Instr para retornar a posição do inicio da palavra que será o seu delimitador;
2 - Usar a função Right com tamanho = Tamanho do texto geral - (Retorno da sua função Instr + Tamanho da palavra delimitadora)..
Ou ainda usar a função Mid iniciando na posição do retorno Instr e indo até o final do texto... .
Olha o que você estava fazendo:
Text3.text = Right(Text1.text, [Ô]Digital[Ô])
A função Right tem os seguintes parâmetros: A sua String e um Inteiro representando a quantidade de caracteres a direita que você vai pegar. O que você fez nem tem sentido.
Mas você faria isso mais fácil com Split, simplesmente porque ele retornaria um array separadinho já pra você, sem fazer conta nenhuma...
Você deveria dar uma olhada nuns exemplos na internet de funções String para entender melhor e ir testando:
Len, Mid, Left, Right, Instr, Split ... essas são as básicas para manipulação de string... tem muito exemplo, inclusive no Help do VB6.
Abraços!
Se você quiser mesmo usar o Right, você terá que seguir as seguintes etapas:
1 - Usar a função Instr para retornar a posição do inicio da palavra que será o seu delimitador;
2 - Usar a função Right com tamanho = Tamanho do texto geral - (Retorno da sua função Instr + Tamanho da palavra delimitadora)..
Ou ainda usar a função Mid iniciando na posição do retorno Instr e indo até o final do texto... .
Olha o que você estava fazendo:
Text3.text = Right(Text1.text, [Ô]Digital[Ô])
A função Right tem os seguintes parâmetros: A sua String e um Inteiro representando a quantidade de caracteres a direita que você vai pegar. O que você fez nem tem sentido.
Mas você faria isso mais fácil com Split, simplesmente porque ele retornaria um array separadinho já pra você, sem fazer conta nenhuma...
Você deveria dar uma olhada nuns exemplos na internet de funções String para entender melhor e ir testando:
Len, Mid, Left, Right, Instr, Split ... essas são as básicas para manipulação de string... tem muito exemplo, inclusive no Help do VB6.
Abraços!
Valeu pessoal deu certo com Split mesmo ob a todos pela paciencia hehehe
Tópico encerrado , respostas não são mais permitidas