Ir ao conteúdo
  • Cadastre-se

Validação de CPF


leonardodourados

Posts recomendados

  • Membro VIP

Boa noite Leonardo.

É só usar esta função:


Public Function ValidaCPF(CPF As String) As String

'Função para cálculo do dígito verificador do CPF

Dim d1, d2, d3, d4, d5, d6, d7, d8, d9, d10, d11 As Integer

' Demais variáveis que serão utilizadas para o cálculo do DV.

Dim Soma1, Soma2, Resto As Integer
Dim Resto1, Resto2 As Integer
Dim DV1, DV2 As Integer



If Not (IsNull(CPF)) Then


d1 = Val(Mid$(CPF, 1, 1))
d2 = Val(Mid$(CPF, 2, 1))
d3 = Val(Mid$(CPF, 3, 1))
d4 = Val(Mid$(CPF, 5, 1))
d5 = Val(Mid$(CPF, 6, 1))
d6 = Val(Mid$(CPF, 7, 1))
d7 = Val(Mid$(CPF, 9, 1))
d8 = Val(Mid$(CPF, 10, 1))
d9 = Val(Mid$(CPF, 11, 1))
d10 = Val(Mid$(CPF, 13, 1))
d11 = Val(Mid$(CPF, 14, 1))

Soma1 = ((d1 * 10) + (d2 * 9) + (d3 * 8) + (d4 * 7) + (d5 * 6) + (d6 * 5) + (d7 * 4) + (d8 * 3) + (d9 * 2))
Resto1 = (Soma1 Mod 11)

If (Resto1 <= 1) Then
DV1 = 0
Else
DV1 = 11 - Resto1
End If

Soma2 = ((d1 * 11) + (d2 * 10) + (d3 * 9) + (d4 * 8) + (d5 * 7) + (d6 * 6) + (d7 * 5) + (d8 * 4) + (d9 * 3) + (DV1 * 2))
Resto2 = (Soma2 Mod 11)


If (Resto2 <= 1) Then
DV2 = 0
Else
DV2 = 11 - Resto2
End If


If ((DV1 <> d10) Or (DV2 <> d11)) Then

ValidaCPF = "Inválido"
Else


ValidaCPF = "Válido"
End If

End If

End Function

você sabe como colar a função em um Módulo do Editor de VBA?

Um abraço

Link para o comentário
Compartilhar em outros sites

Boa Noite Patropi,

Brother, você é um gênio. Muito obrigado, funcionou certinho

Agora, eu fiz um sistema (não muito prático) pra não deixar passar quando a pessoa digita por exemplo: 111.111.111-11, ou 222.222.222-22, etc.

coloque o código desse jeito:

if CPF = 11111111111 or CPF = 22222222222 ..... then

msgbox "CPF INVÁLIDO"

else

...

end if

Se souber um jeito mais prático, fico grato.

Grande abraço, obrigado novamente.

Leonardo

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!