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

(Resolvido) Validação De Cpf


BRUCCE

Pergunta

Bom dia, Galara!

Consegui aqui no forum, uma formula para validação de CPF, porém quando tento implata-la no meu BC, da erro. Não sei se estou colocando no lugar certo.

Vou no evento, APOS ATUALIZAR, na propriedade do campo CPF e insiro a seguinte formula:

alguém me diga se estou fazendo correto, por favor!

Function dvcpf(CPF As String) As String

Dim lngSoma, lngInteiro As Long

Dim intNumero, intMais, i, intResto As Integer

Dim intDig1, intDig2 As Integer

Dim strDigVer, strcampo, strCaracter, StrConf As String

Dim dblDivisao As Double

lngSoma = 0

intNumero = 0

intMais = 0

strcampo = Left(CPF, 9)

strDigVer = Right(CPF, 2)

For i = 2 To 10

strCaracter = Right(strcampo, i - 1)

intNumero = Left(strCaracter, 1)

intMais = intNumero * i

lngSoma = lngSoma + intMais

Next i

dblDivisao = lngSoma / 11

lngInteiro = Int(dblDivisao) * 11

intResto = lngSoma - lngInteiro

If intResto = 0 Or intResto = 1 Then

intDig1 = 0

Else

intDig1 = 11 - intResto

End If

strcampo = strcampo & intDig1

lngSoma = 0

intNumero = 0

intMais = 0

For i = 2 To 11

strCaracter = Right(strcampo, i - 1)

intNumero = Left(strCaracter, 1)

intMais = intNumero * i

lngSoma = lngSoma + intMais

Next i

dblDivisao = lngSoma / 11

lngInteiro = Int(dblDivisao) * 11

intResto = lngSoma - lngInteiro

If intResto = 0 Or intResto = 1 Then

intDig2 = 0

Else

intDig2 = 11 - intResto

End If

StrConf = intDig1 & intDig2

dvcpf = StrConf

'If dvcpf = strDigVer Then

Rem 999.999.999-99

'CPF = Mid(CPF, 1, 3) & "." & Mid(CPF, 4, 6) & "." & Mid(CPF, 7, 9) & "-" & Right(CGC, 2)

'dvcpf = CPF

If dvcpf <> strDigVer Then

'Else

MsgBox "CPF inválido", vbCritical

DoCmd.CancelEvent

'MsgBox "CPF válido!", vbInformation

'Else

End If

End Function

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Essa função eu postei ela aqui já tem um tempinho, ela funciona perfeitamente, só que você tem de colocar ela num módulo e chamar ela a partir de um procedimento de evento (sugiro "após atualizar") do seu campo de CPF algo assim

dvcpf (Me.seuCampoCPF)

Pronto isso funciona...

Link para o comentário
Compartilhar em outros sites

  • 0

boa tarde, Mr Majl

Fiz o seguinte com a Validação de CPF,

1º criei um Módulo e dei o nome de dvcpf;

2º No evento APÓS ATUALIZA, do campo CPF, criei um Código que ficou assim:

Private Sub CPF_AfterUpdate()

dvcpf (Me.CPF)

End Sub

Mas quando digito o numero do CPF, aparece a seguinte mensagem:

ERRO DE COMPILAÇÃO:

ERA ESPERADA VARIAVEL OU PROCEDIMENTO, NÃO MÓDULO.

Link para o comentário
Compartilhar em outros sites

  • 0

veja bem o erro tá ocorrendo por você ter atribuido ao modulo o mesmo nome da função; num módulo você pode ter várias funções, por isso ou você altera o nome da função ou altera o nome do módulo!

Link para o comentário
Compartilhar em outros sites

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,3k
    • Posts
      652,4k
×
×
  • Criar Novo...