VALIDAR CPF
#0000 Postado em 10/01/2005 00:50:43(Sem notificação de respostas por e-mail)
--------------------------------------------------------------------------------
Eae galera..!! pois eh acho q vou dar um poko d trabalho a voces mas vontade d aprender eh o q naum falta.. rsrsrsrs
Bom, desejaria se alguem tivesse tempo e paciencia para me explicar o código abaixo linha por linha d uma funcao q valida o CPF. Se alguem tiver muiiiiiittta paciencia e mmuiiiiito tempo pra da uma explicada nem q for ate por e-mail eu agradeco desde ja...!!!
Public Function FU_ValidaCPF(CPF As String) As Boolean
Dim soma As Integer
Dim Resto As Integer
Dim i As Integer
'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
eh isso ae galera..
quaisquer coisa: adilsonmarrone@ig.com.br
Um abraço a todos...!!!
K3r|\|3|_P@nIc
K3r|\|3
--------------------------------------------------------------------------------
Eae galera..!! pois eh acho q vou dar um poko d trabalho a voces mas vontade d aprender eh o q naum falta.. rsrsrsrs
Bom, desejaria se alguem tivesse tempo e paciencia para me explicar o código abaixo linha por linha d uma funcao q valida o CPF. Se alguem tiver muiiiiiittta paciencia e mmuiiiiito tempo pra da uma explicada nem q for ate por e-mail eu agradeco desde ja...!!!
Public Function FU_ValidaCPF(CPF As String) As Boolean
Dim soma As Integer
Dim Resto As Integer
Dim i As Integer
'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
eh isso ae galera..
quaisquer coisa: adilsonmarrone@ig.com.br
Um abraço a todos...!!!
K3r|\|3|_P@nIc
K3r|\|3
Kernel, primeiro você tem que saber a lógica...
Fórmula para cálculo de dÃgitos verificadores do CPF.
• Descrição
No Brasil existe o CPF (Cadastro de Pessoas FÃsicas) que serve para identificar cada indivÃduo no paÃs. O número do CPF é composto de 11 dÃgitos, sendo os dois últimos os dÃgitos de verificação. A fórmula para verificar a validade do número do CPF é simples e é explicada abaixo:
Vamos tomar como exemplo o número 123.456.789-09
• 1º DÃgito Verificador
Primeiro calculamos a soma da multiplicação dos 9 primeiros dÃgitos por 10, 9, 8, ... , 3, 2, respectivamente. Ou seja
Soma = (1*10) + (2*9) + ... + (8*3) + (9*2)
Em seguida, dividimos e multiplicamos por 11. (Nota: Ao multiplicarmos utilizamos o valor inteiro da divisão).
Valor = (Soma/11) * 11
Por fim, subtraÃmos Valor de Soma.
Resultado = Soma - Valor
Note que acabamos de realizar o módulo de Soma e 11. As duas operações anteriores podem ser substituÃdas por Resultado = Soma módulo 11.
Agora analisamos Resultado:
Se Resultado for igual à  1 ou à  0, então o 1º dÃgito verificador é 0;
Caso contrário, o 1º dÃgito verificador é o resultado da subtração de Resultado de 11.
• 2º DÃgito Verificador
Primeiro calculamos a soma da multiplicação dos 9 primeiros dÃgitos por 11, 10, 9, ... , 4, 3, respectivamente e em seguida somamos com (Digito1*2), sendo que Digito1 é o valor encontrado para o 1º dÃgito verificador. Ou seja
Soma = (1*11) + (2*10) + ... + (8*4) + (9*3) + (Digito1*2)
O resto é semelhante ao que foi feito anteriormente. Dividimos e multiplicamos por 11. (Nota: Ao multiplicarmos utilizamos o valor inteiro da divisão).
Valor = (Soma/11) * 11
Por fim, subtraÃmos Valor de Soma.
Resultado = Soma - Valor
Agora analisamos Resultado:
Se Resultado for igual à  1 ou à  0, então o 2º dÃgito verificador é 0;
Caso contrário, o 2º dÃgito verificador é o resultado da subtração de Resultado de 11.
No nosso exemplo (123.456.789-09) o número é válido.
***
Espero ter ajudado
Fórmula para cálculo de dÃgitos verificadores do CPF.
• Descrição
No Brasil existe o CPF (Cadastro de Pessoas FÃsicas) que serve para identificar cada indivÃduo no paÃs. O número do CPF é composto de 11 dÃgitos, sendo os dois últimos os dÃgitos de verificação. A fórmula para verificar a validade do número do CPF é simples e é explicada abaixo:
Vamos tomar como exemplo o número 123.456.789-09
• 1º DÃgito Verificador
Primeiro calculamos a soma da multiplicação dos 9 primeiros dÃgitos por 10, 9, 8, ... , 3, 2, respectivamente. Ou seja
Soma = (1*10) + (2*9) + ... + (8*3) + (9*2)
Em seguida, dividimos e multiplicamos por 11. (Nota: Ao multiplicarmos utilizamos o valor inteiro da divisão).
Valor = (Soma/11) * 11
Por fim, subtraÃmos Valor de Soma.
Resultado = Soma - Valor
Note que acabamos de realizar o módulo de Soma e 11. As duas operações anteriores podem ser substituÃdas por Resultado = Soma módulo 11.
Agora analisamos Resultado:
Se Resultado for igual à  1 ou à  0, então o 1º dÃgito verificador é 0;
Caso contrário, o 1º dÃgito verificador é o resultado da subtração de Resultado de 11.
• 2º DÃgito Verificador
Primeiro calculamos a soma da multiplicação dos 9 primeiros dÃgitos por 11, 10, 9, ... , 4, 3, respectivamente e em seguida somamos com (Digito1*2), sendo que Digito1 é o valor encontrado para o 1º dÃgito verificador. Ou seja
Soma = (1*11) + (2*10) + ... + (8*4) + (9*3) + (Digito1*2)
O resto é semelhante ao que foi feito anteriormente. Dividimos e multiplicamos por 11. (Nota: Ao multiplicarmos utilizamos o valor inteiro da divisão).
Valor = (Soma/11) * 11
Por fim, subtraÃmos Valor de Soma.
Resultado = Soma - Valor
Agora analisamos Resultado:
Se Resultado for igual à  1 ou à  0, então o 2º dÃgito verificador é 0;
Caso contrário, o 2º dÃgito verificador é o resultado da subtração de Resultado de 11.
No nosso exemplo (123.456.789-09) o número é válido.
***
Espero ter ajudado
eh isso ae..!! blz kra..! valeu pela ajuda valeu mesmo o scorninpc q tbm eh cadastrado no site me deu uma ajuda a + blz..!!! valeu mesmo e espero sempre contar com sua ajuda se possivel obrigado..
Tópico encerrado , respostas não são mais permitidas