VBA TIPS | Validando o CPF

Function cpf_Validation (ByVal sCPF As String) As Boolean

    Dim sVerificador1 As String ' Armazena os dois dígitos verificadores originais do CPF

    Dim sVerificador2 As String ' Armazena os dois dígitos verificadores calculados

    Dim i As Integer            ' Variável de controle para os loops

    Dim lOffset As Integer      ' Multiplicador inicial para os cálculos

    Dim lTotal As Long          ' Soma dos produtos para cálculo do dígito verificador


    ' Remove caracteres não numéricos do CPF

    sCPF = Replace(sCPF, ".", "")

    sCPF = Replace(sCPF, "-", "")

    sCPF = Replace(sCPF, " ", "")


    ' Verifica se o CPF possui exatamente 11 caracteres e se é numérico

    If Len(sCPF) <> 11 Or Not IsNumeric(sCPF) Then

        cpf_Validation = False

        Exit Function

    End If


    ' Captura os dois dígitos verificadores originais

    sVerificador1 = Right(sCPF, 2)


    ' Mantém apenas os primeiros 9 dígitos para calcular os verificadores

    sCPF = Left(sCPF, 9)


    ' Loop para calcular os dois dígitos verificadores

    Do While Len(sCPF) < 11

        lOffset = 2    ' Inicia o multiplicador em 2

        lTotal = 0     ' Zera a soma total


        ' Calcula a soma dos produtos entre cada dígito e seu respectivo multiplicador

        For i = Len(sCPF) To 1 Step -1

            lTotal = lTotal + (CInt(Mid(sCPF, i, 1)) * lOffset)

            lOffset = lOffset + 1

        Next i


        ' Calcula o dígito verificador com base na soma

        Dim digito As Integer

        digito = 11 - (lTotal Mod 11)

        If digito >= 10 Then digito = 0


        ' Adiciona o dígito verificador ao CPF

        sCPF = sCPF & CStr(digito)

    Loop


    ' Captura os dois dígitos verificadores calculados

    sVerificador2 = Right(sCPF, 2)


    ' Compara os dígitos verificadores originais com os calculados

    cpf_Validation = (sVerificador1 = sVerificador2)

End Function


CLIQUE AQUI e nos contate via What's App para avaliarmos seu projeto 

Envie seus comentários e sugestões e compartilhe este artigo!
brazilsalesforceeffectiveness@gmail.com

 Série de Livros nut Project 

DONUT PROJECT: VBA - Projetos e Códigos de Visual Basic for Applications (Visual Basic For Apllication)eBook - DONUT PROJECT 2024 - Volume 03 - Funções Financeiras - André Luiz Bernardes eBook - DONUT PROJECT 2024 - Volume 02 - Conectando Banco de Dados - André Luiz Bernardes eBook - DONUT PROJECT 2024 - Volume 01 - André Luiz Bernardes


 Série DONUT PROJECT 2024 

DONUT PROJECT 2024 - VBA - Retorna o Valor do Conteúdo da Área de Transferência do Sistema DONUT PROJECT 2024 - VBA - Retorna a Versão do Sistema Operacional em que o Excel está sendo Executado DONUT PROJECT 2024 - VBA - Desenvolvimento de Ferramentas de Análise de Riscos

DONUT PROJECT 2024 - VBA - Desenvolvimento Obter Informações sobre a Versão do Sistema Operacional DONUT PROJECT 2024 - VBA - Automatizando Tarefas de Engenharia e Design DONUT PROJECT 2024 - VBA - Automatização de Processos de Medir Distâncias no Google Maps

DONUT PROJECT 2024 - VBA - Automatização de Processos de Marketing Mail com o GMail DONUT PROJECT 2024 - VBA - Automatização de Processos de Marketing Mail DONUT PROJECT 2024 - VBA - Como proteger e ocultar fórmulas em uma planilha do Excel usando VBA

DONUT PROJECT 2024 - VBA - Código Exporta os dados e Atualiza as Quantidades em Estoque de um Determinado Produto na Planilha "Estoque" Crie Funções Personalizadas com Visual Basic for Applications (VBA) para Análise de Dados nos Negócios Saber programar em Visual Basic for Applications (VBA)

Nenhum comentário:

Postar um comentário

diHITT - Notícias