Ir para conteúdo
Fórum Script Brasil
  • 0

Função Que Verifica A Validade Do Cpf


Macêdo

Pergunta

Função para Validar CPF (colocar a função num modulo e no textbox do form chamar o nome da função no evento LostFocus,)

Ponha o seguinte código num módulo:

Function FU_ValidaCPF(CPF As String) As Integer
'
    Dim soma As Integer
    Dim Resto As Integer
    Dim i As Integer
    CPF = Replace(CPF, ".", "")
    CPF = Replace(CPF, "-", "")
    CPF = Replace(CPF, "/", "")
    'Valida argumento
    If Len(CPF) <> 11 Then
        FU_ValidaCPF = False
        Exit Function
    End If
    soma = 0
    For i = 1 To 9
        soma = soma + Val(Mid$(CPF, i, 1)) * (11 - i)
    Next i
    Resto = 11 - (soma - (Int(soma / 11) * 11))
    If Resto = 10 Or Resto = 11 Then Resto = 0
    If Resto <> Val(Mid$(CPF, 10, 1)) Then
        FU_ValidaCPF = False
        Exit Function
    End If
    soma = 0
    For i = 1 To 10
        soma = soma + Val(Mid$(CPF, i, 1)) * (12 - i)
    Next i
    Resto = 11 - (soma - (Int(soma / 11) * 11))
    If Resto = 10 Or Resto = 11 Then Resto = 0
    If Resto <> Val(Mid$(CPF, 11, 1)) Then
        FU_ValidaCPF = False
        Exit Function
    End If
    FU_ValidaCPF = True
End Function
agora vá até a textbox onde é digitado o CPF e ponha no evento LostFocus: 'no exemplo a textbox é a text5
Private Sub Text5_LostFocus()
If FU_ValidaCPF(Text5.Text) = 0 Then
MsgBox ("CPF Inválido")
Text5.SetFocus
End If

(quando o resultado = 0 CPF invalido quando resultado = -1 CPF correto), por isso que colocamos a instrução se=0

e caso sendo realmente incorreto aparecerá a mensagem informando e quando clicar na mensagem o foco voltará ao campo para que o usuário digite novamente o CPF.

Editado por kuroi
arrumando tag CODE
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...