sábado, 21 de outubro de 2017
assinantes
   Assinatura Ativo Access


Não Assinantes
ConteÚdo
DOWNLOADS
Interação
dicas aleatórias
Dicas

Função para validar o número do título de eleitor
Autor:  J.Macedo (j.macedo@uol.com.br)
Publicado:  13/03/2006
Visitas: 3820
 
Função para validar o número do título de eleitor.
Testada em mais de 140.000 títulos.


'---------------------------------------------------------------------------------
Function Valida_TE(NumTE As String) As Boolean
'------------------------------------------------------------------------------------------------------
'Esta função valida o Título de Eleitor, através do dígito verificador
'Autor: José Maria Macedo do Vale (www.guiadoeleitor.com.br)
'Baseada no artigo 12 da Resolução TSE nº 21538/2003
'------------------------------------------------------------------------------------------------------
Dim soma, resto, i, digito1, digito2 As Integer
If Len(NumTE) < 12 Then NumTE = String(12 - Len(NumTE), "0") + NumTE
If Len(NumTE) > 12 Then Valida_TE = False: Exit Function
'valida a unidade da federação do TE
If Val(Mid(NumTE, 9, 2)) < 1 Or Val(Mid(NumTE, 9, 2)) > 28 Then Valida_TE = False: Exit Function
'valida o primeiro dígito
soma = 0
For i = 1 To 8
soma = soma + Val(Mid$(NumTE, i, 1)) * (10 - i)
Next i
resto = soma Mod 11
If resto = 0 Then
If Mid(NumTE, 9, 2) = "01" Or Mid(NumTE, 9, 2) = "02" Then digito1 = 1 Else digito1 = 0
Else
If resto = 1 Then digito1 = 0 Else digito1 = 11 - resto
End If
If digito1 <> Val(Mid$(NumTE, 11, 1)) Then Valida_TE = False: Exit Function
'valida o segundo dígito
soma = 0
For i = 9 To 10
soma = soma + Val(Mid$(NumTE, i, 1)) * (13 - i)
Next i
soma = soma + digito1 * 2
resto = soma Mod 11
If resto = 0 Then
If Mid(NumTE, 9, 2) = "01" Or Mid(NumTE, 9, 2) = "02" Then digito2 = 1 Else digito2 = 0
Else
If resto = 1 Then digito2 = 0 Else digito2 = 11 - resto
End If
If digito2 <> Val(Mid$(NumTE, 12, 1)) Then Valida_TE = False: Exit Function
Valida_TE = True
End Function

  « Voltar

 

Assine AtivoAccess
     CD Ativo Access = R$ 44,70

 

   Copyright © Ativo Access 2003 - 2017- Todos os direitos reservados   Política de Privacidade | Fale conosco