MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


2 participantes

    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido

    torongo
    torongo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 14/09/2011

    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Empty Validação de CPF, só passar para o campo seguinte com o número válido

    Mensagem  torongo 21/9/2011, 19:45

    Boa tarde pessoal!

    Verificando o fórum, consegui um módulo para fazer a valiação do CPF, funciona perfeitamente (inclui no meu BD) só que não consegui fazer com que, caso o número digitado não seja válido seja obrigatória a digitação de um válido para poder prosseguir.

    O módulo é esse:
    Function DVCPF(CPF As String) As String

    'Rotina alterada por Dalvo Aragão Junior
    'Data: 15/02/98
    'Site: www.freeespace.com.br/sc/estoque

    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
    MsgBox "CPF válido!", vbInformation
    Else
    MsgBox "CPF inválido", vbCritical
    DoCmd.CancelEvent
    End If

    End Function

    Tentei incluir, na parte que mostra a mensagem de que o cpf é inválido um comando para limpar o campo CPF, só que está dando erro.
    Teoricamente era pra ser assim:
    Se o CPF for inválido, então:
    Limpar campo CPF.
    Voltar Foco para campo CPF.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Empty Re: [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido

    Mensagem  JPaulo 22/9/2011, 11:46

    Basta dar uma procurada;

    http://maximoaccess.forumeiros.com/t3990-resolvidovalida-cpf

    http://maximoaccess.forumeiros.com/t286-valida-cpf-ou-cnpj

    http://maximoaccess.forumeiros.com/t1040-valida-cpf-e-cnpj-no-mesmo-campo



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Empty Re: [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido

    Mensagem  Convidado 22/9/2011, 12:16

    1 - Apliquei o código diretamente no módulo do form
    2 - Criei uma caixa texto RecebeFoco.. deixo-a com largura 0 para ficar invisível
    3 - se o CFP é invalido envio o foco para esta caixa texto para não passar ao proximo registro
    4 - Envio o foco para a caixa texto CPF
    5 - Coloco a cor de fundo em vermelho para indicar o erro.


    http://dl.dropbox.com/u/26441349/Totongo_24_09_11.rar


    Cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Empty Re: [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido

    Mensagem  Convidado 22/9/2011, 12:17

    Não percebi que estavas a respoder João Paulo..

    Cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Empty Re: [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido

    Mensagem  Convidado 22/9/2011, 12:19

    Este que enviou é perfeito.

    http://maximoaccess.forumeiros.com/t286-valida-cpf-ou-cnpj


    Saudações
    torongo
    torongo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 14/09/2011

    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Empty Re: [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido

    Mensagem  torongo 30/9/2011, 14:48

    Pessoal, consegui fazer funcionar através dos exemplos postados.
    Com isso aconteceu um novo problema, o campo CPF é requerido, então quando coloco o 'Me!CPF.Undo'
    ou 'DoCmd.CancelEvent' aparece uma mensagem de erro informando que o valor ignora a regra de validação do campo, além disso, quando esse campo é preenchido, um outro campo que é o 'Protocolo' é preenchido com autonumeração.
    Dessa forma, quando eu digito algum cpf, ele já gera o protocolo específico, quando o cpf é inválido que eu digito novamente ele já pula a numeração para o seguinte, o que não é interessante.
    Exemplo: Procotolo: 1, CPF: 001.123.999.87 (inválido), quando digito o outro CPF o Protocolo vai pra 2 e assim por diante. Como resolver isso?
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Empty Re: [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido

    Mensagem  JPaulo 30/9/2011, 16:39

    Substitua o:

    Me.Undo
    Cancel=True

    Por:

    DoCmd.CancelEvent
    Exit Sub

    Veja com campos requeridos:

    http://dl.dropbox.com/u/771097/ValidaCPF_CNPJ_III.rar


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Folder_announce_new Instruções SQL como utilizar...
    torongo
    torongo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 14/09/2011

    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Empty Re: [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido

    Mensagem  torongo 30/9/2011, 16:56

    Obrigado JPaulo!
    Resolvido o problema, inclui o valor padrão '0' e funcionou.
    Grato pela atenção!
    avatar
    Convidado
    Convidado


    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Empty Re: [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido

    Mensagem  Convidado 30/9/2011, 18:24

    O Fórum agradece o Retorno.

    Conteúdo patrocinado


    [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido Empty Re: [Resolvido]Validação de CPF, só passar para o campo seguinte com o número válido

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 04:18