Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
leonardodourados

Validação de CPF

Recommended Posts

Patropi    1.458

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

Compartilhar este post


Link para o post
Compartilhar em outros sites
leonardodourados    0
  • Autor do tópico
  • 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

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

    ×