USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Remover pontos de CPF no banco de dados
Rodrigo F.
JABOTICABAL
SP - BRASIL
Postada em 23/02/2005 17:19 hs            
Tenho o seguinte problema, tenho um Bd com o campo CPF, no mesmo os dados estão gravados com mascara, existe um meio de remover essas mascaras pelo vb ?
 
Ex.: 388.566.987-56 = 38856698756
 
                                                       Obrigado
 
     
Jayme
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 23/02/2005 17:28 hs            
Isto resolve:
 
Private Sub TiraMascara()
  Dim x As String
  RS_CADCLI.MoveMin
  Do While Not RS_CADCLI.EOF
  '12345678901234
  '388.566.987-56
    x = Mid(RS_CADCLI!CPF_Clie, 1, 3) & _
        Mid(RS_CADCLI!CPF_Clie, 5, 3) & _
        Mid(RS_CADCLI!CPF_Clie, 9, 3) & _
        Mid(RS_CADCLI!CPF_Clie, 1, 3) & _
        Mid(RS_CADCLI!CPF_Clie, 13, 2)
    RS_CADCLI!CPF_Clie = x
    RS_CADCLI.Update
    RS_CADCLI.MoveNext
  Loop
End Sub
Jayme
   
marcos
não registrado
Postada em 23/02/2005 18:30 hs   
se vc quiser bloquear o text tbm faca assim, no evento keypress to text digite
 
if keyascii = 45 or keyascii = 46 then keyascii = 0
 
isso ira anular a digitacao dos caracteres (. e -)
 
Ah! nao se esqueca de habilitar a propriedade keyprview do seu form
     
Roßerto
Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843
SAO PAULO
SP - BRASIL
Postada em 23/02/2005 21:02 hs            
vc pode fazer do jeito que o nosso colega Jayme falou, mas eu mudaria um pouco
essa função.
 
  Dim x As String
  RS_CADCLI.MoveMin
  Do While Not RS_CADCLI.EOF
    RS_CADCLI!CPF_Clie = TiraPontos(RS_CADCLI!CPF_Clie)
    RS_CADCLI.Update
    RS_CADCLI.MoveNext
  Loop

 
Private Function TiraPontos(mString as String) as String
   Dim i as Integer
   Dim mResultado as String
 
  If len(mString) = 0 then Exit Function
 
  For i = 1 to len(mString)
      If IsNumeric(Mid(mString,i,1)) then
          mResultado = mResultado & Mid(mString,i,1)
      End If
  Next
  TiraPonto = mResultado
 
End Function
 
Prefiro fazer a função assim, pq da maneira que o nosso colega passou, se tiver
algum campo já sem mascara, ele vai alterar os dados.
 
Roberto
 
TÓPICO EDITADO
   
ventana
SANTOS
SP - BRASIL
Postada em 23/02/2005 21:32 hs            
Voce tambem pode fazer assim

           strCPFF = Trim(Replace(rscmdAux!TBCLI_CPF, ".", ""))
           strCPF = Replace(strCPF, "-", "") & "   "

Nesse exemplo voce substitui o "." e o "-" por nulo, logo serao deixados apenas os numeros, a vantagem e que voce pode utilizar para remover "/" do CNPJ por exemplo ou brancos, bastando para isso, substituir esses valores dentro das aspas.

Se voce tiver que fazer isso em outras situacoes, eu acho que o ideal, seria colocar essa rotina que tem apenas 2 linhas, numa funcao, pois dessa forma se for o caso voce poderia tirar tambem outros caracteres indesejados de uma sequencia de stringas.A vantagem e que voce pode mandar tirar todos os caracteres nao desejados e se eles fizerem parte da String serao retirados e se nao fizerem tudo ficara como esta.

Boa sorte
     
Rodrigo F.
JABOTICABAL
SP - BRASIL
ENUNCIADA !
Postada em 24/02/2005 01:07 hs            
Pessoal deu certinho, agora só preciso de mais uma ajuda se for possível, tenho uma váriavel com mais de 40 caracteres, como faço para que ela fique apenas com 40 ?
 
 
Obrigado
   
Página(s): 1/2      PRÓXIMA »

CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página