USANDO REPLACE EM TEXTBOX

DANLEONHART 28/02/2011 22:57:53
#366836
Pessoal, como posso fazer para se for detectado em uma TextBox determinadas letras ([Ô]a[Ô] & [Ô]i[Ô] por exemplo) sejam substituidas por 1 e 3 ?

Tentei assim:

Private Sub cmd2_Click()
If InStr(txt2.Text, [Ô]a[Ô]) Then
lb4.Caption = Replace(txt2.Text, [Ô]a[Ô], [Ô]1[Ô])
ElseIf InStr(txt2.Text, [Ô]i[Ô]) Then
lb4.Caption = Replace(txt2.Text, [Ô]i[Ô], [Ô]3[Ô])
End If

End Sub



mais ele substitui apenas uma...tem uma maneira mais fácil ?
SACOFRITO 28/02/2011 23:20:41
#366839
Tente isso
é só adaptar para o que voce quer substituir..

  Function pf_RetiraMascara(Texto As String)
textofim = [Ô][Ô]
For i = 1 To Len(Texto)

verifica = Mid(Texto, i, 1)

Select Case verifica
Case [Ô]a[Ô]
verifica = [Ô]x[Ô]
Case [Ô]i[Ô]
verifica = [Ô]y[Ô]
End Select
textofim = textofim & verifica
Next
pf_RetiraMascara = textofim
End Function
SACOFRITO 28/02/2011 23:22:14
#366840
Resposta escolhida
Use assim

lbl1.caption = pf_RetiraMascara(txt1.text)
MARCELO.TREZE 28/02/2011 23:30:32
#366842
colega é mais simples ainda

veja

lb4.Caption = Replace(txt2.Text, [Ô]a[Ô], [Ô]1[Ô])
lb4.Caption = Replace(txt2.Text, [Ô]i[Ô], [Ô]3[Ô])

vc não precisa usar instr basta o replace, lembre-se no caso acima só irá substituir se as letras forem minusculas
DANLEONHART 01/03/2011 04:50:13
#366847
[txt-color=#0000f0]MARCELO-TREZE[/txt-color] : Fazendo assim vai substituir apenas o [Ô]primeiro[Ô] caractere que digitar...se for colocado [Ô]ai[Ô] vai aparecer: [Ô]1i[Ô] , se colocar [Ô]ia[Ô] então será:[Ô] 3a[Ô]...quero que faça os dois ao mesmo tempo...vou testar a dica do SACOFRITO.
SNNIFFER 01/03/2011 06:26:21
#366848
Ué, então em cima do exemplo do marcelo faz assim:

lbl4.Caption = Replace(txt2.Text, [Ô][txt-color=#0000f0]ia[/txt-color][Ô], [Ô]33[Ô])
Tópico encerrado , respostas não são mais permitidas