TIRAR [Ô]PONTO E TRACO[Ô]

RONIPASETTO 24/07/2012 15:55:17
#406524
Tenho um txtCep que recebe o seguinte cep 92.000-000 ele faria a busca em um banco de dados mas o banco de dados o cep se encontra 92000000 sem o [Ô].[Ô] e o [Ô]-[Ô].

O txt Tem que ser no formato [Ô]92.000-000[Ô]

Tem uma formula para tirar esses caracteres e colocalos em um outro txtCep2

Por exemplo.

TxtCep= 92.000-000 quando clico no botão validar o txtCep2 recebe 92000000
KERPLUNK 24/07/2012 16:02:34
#406525
cep = txtCep.text [ô]valor 92.000-000
cep = replace(replace(cep, [Ô]-[Ô],[Ô][Ô]), [Ô].[Ô],[Ô][Ô])
FBGSYSTEMS 24/07/2012 16:03:54
#406526
Resposta escolhida
Cara eu fiz uma funçao para tirar todos os tipos de máscara. Funciona legal.
Vou dar um exemplo.

msgbox pf_RetiraMascara(txtcep)

A função

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

caracter = Mid(Texto, i, 1)

Select Case caracter
Case [Ô].[Ô], [Ô]-[Ô], [Ô],[Ô], [Ô]([Ô], [Ô])[Ô], [Ô] [Ô], [Ô]/[Ô], [Ô]_[Ô]
caracter = [Ô][Ô]
End Select

textofim = textofim & caracter
Next
pf_RetiraMascara = textofim
End Function

Ve se funciona. Ai estao várias máscaras. Se precisar é só inserir no Case
GOODSPEAKERS 24/07/2012 16:16:06
#406528
ACRESCENTA AI NA FUNÇÃO O QUE VOCE PRECISAR

Public Function TiraCaracterEspecial(ByVal txt As String) As String

On Error GoTo Erro
txt = UCase(txt)
txt = Replace(txt, [Ô]Á[Ô], [Ô]A[Ô])
txt = Replace(txt, [Ô]é[Ô], [Ô]E[Ô])
txt = Replace(txt, [Ô]Í[Ô], [Ô]I[Ô])
txt = Replace(txt, [Ô]Ó[Ô], [Ô]O[Ô])
txt = Replace(txt, [Ô]Ú[Ô], [Ô]U[Ô])
txt = Replace(txt, [Ô]Ã[Ô], [Ô]A[Ô])
txt = Replace(txt, [Ô]Õ[Ô], [Ô]O[Ô])
txt = Replace(txt, [Ô]À[Ô], [Ô]A[Ô])
txt = Replace(txt, [Ô]È[Ô], [Ô]E[Ô])
txt = Replace(txt, [Ô]Ì[Ô], [Ô]I[Ô])
txt = Replace(txt, [Ô]Ò[Ô], [Ô]O[Ô])
txt = Replace(txt, [Ô]Ù[Ô], [Ô]U[Ô])
txt = Replace(txt, [Ô]Ü[Ô], [Ô]U[Ô])
txt = Replace(txt, [Ô]Â[Ô], [Ô]A[Ô])
txt = Replace(txt, [Ô]Ê[Ô], [Ô]E[Ô])
txt = Replace(txt, [Ô]Î[Ô], [Ô]I[Ô])
txt = Replace(txt, [Ô]Ô[Ô], [Ô]O[Ô])
txt = Replace(txt, [Ô]Û[Ô], [Ô]U[Ô])
txt = Replace(txt, [Ô][ô][Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]'[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]'[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]~[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]^[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]º[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]ª[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]{[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]}[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô][[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]][Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]?[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]<[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]>[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]\[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]|[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]Á[Ô], [Ô]A[Ô])
txt = Replace(txt, [Ô]![Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]@[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]#[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]¨[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]&[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]¹[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]²[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]³[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]£[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]¢[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]§[Ô], [Ô] [Ô])
txt = Replace(txt, [Ô]Ç[Ô], [Ô]C[Ô])
TiraCaracterEspecial = txt
Exit Function
Erro:
End Function
FRANKCPA 24/07/2012 16:18:50
#406529
Você pode também usar uma propriedade chamada PromptInclude (Caso esteja usando um MakEdBox). (Se definirmos PromptInclude como True este caractere será incluído como parte do código digitado)
caso deixe a propriedade setada como false, apenas o que foi digitado no component será passado.
http://www.macoratti.net/vb_vali2.htm
LUIZCOMINO 24/07/2012 16:43:59
#406530
segue amigo monte a mascara da sua maneira



Sub Mascarar(Text As TextBox, Mascara As String, KeyAscii As Integer)
[ô]Luiz Comino 20/06/2012
If vbKeyBack = KeyAscii Then Exit Sub
Text.MaxLength = Len(Mascara)

Dim MtzDigitos() As String
Dim MtzMsk() As String
Dim Qtd As Integer
Dim i, x As Integer

For i = 1 To Len(Mascara)
x = x + 1
If Mid(Mascara, i, 1) <> [Ô]#[Ô] Then
Qtd = Qtd + 1
ReDim Preserve MtzDigitos(Qtd)
ReDim Preserve MtzMsk(Qtd)
MtzDigitos(Qtd) = x - 1
MtzMsk(Qtd) = Mid(Mascara, i, 1)
End If
Next
For i = 1 To UBound(MtzMsk)
If Len(Text) = MtzDigitos(i) Then
Text = Text & MtzMsk(i)
Text.SelStart = Len(Text1)
End If
Next

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