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

3 participantes

    [Resolvido]Erro ao Deletar Registro com Módulo

    julia-melo
    julia-melo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 72
    Registrado : 02/01/2013

    [Resolvido]Erro ao Deletar Registro com Módulo Empty Erro ao Deletar Registro com Módulo

    Mensagem  julia-melo Sex 25 Jan 2013, 02:59

    Pessoal.

    Mais uma vez, necessito da ajuda de vocês.

    É o seguinte, possuo um formulário no qual eu preencho os campos CNPJ e CPF, que por sua vez possui alguns critérios para o preenchimento:
    1 - Existe um módulo (ModValida), que verifica se o preenchimento dos campos foram corretos.
    2 - Existe também um evento "Após Atualizar" no qual verifica se tanto o CPF quanto o CNPJ foram já preenchidos na tabela (Tab_Clientes).

    O meu problema ocorre quando digito os campos CPF/CNPJ corretos e preciso deletá-los (o que já ocorreu algumas vezes), mesmo que seja para que o campo fique em branco, nesse caso aparece a seguinte mensagem:

    Erro em tempo de execução '94': Uso de 'Null' inválido

    Já tentei inúmeras saídas, mas até agora nenhuma sortiu efeito, acredito ser algum critério do módulo de validação.

    Anexo meu BD e o print do erro.

    Obrigada.

    Júlia!
    Anexos
    [Resolvido]Erro ao Deletar Registro com Módulo AttachmentBD Julia.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (127 Kb) Baixado 6 vez(es)
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Erro ao Deletar Registro com Módulo Empty Re: [Resolvido]Erro ao Deletar Registro com Módulo

    Mensagem  criquio Sex 25 Jan 2013, 08:34

    Use o If para condicionar o evento ao campo preenchido:

    Código:
    If Not IsNull(Me.NomeDoCampo) Then
        Avalia se CPF/CNPJ é válido
    End If


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    julia-melo
    julia-melo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 72
    Registrado : 02/01/2013

    [Resolvido]Erro ao Deletar Registro com Módulo Empty Ajuda.

    Mensagem  julia-melo Sex 25 Jan 2013, 11:03

    Obrigado pela ajuda Criquio.

    Mas não deu certo, o erro prossegue, lembrando que possuo o seguinte código no evento "Após Atualizar" do campo CNPJ:

    Código:
    Private Sub CNPJ_AfterUpdate()
    If Me!CNPJ = Me!CNPJ.OldValue Then Exit Sub
    If Not IsNull(DLookup("[CNPJ]", "Tab_Clientes", "[CNPJ] ='" & Me!CNPJ & "'")) Then
    Cancel = True
    Me.CNPJ.Undo
    MsgBox "CNPJ já cadastrado com esse número.", vbInformation, "Sistema de Vendas"
    End If
    End Sub
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8056
    Registrado : 05/11/2009

    [Resolvido]Erro ao Deletar Registro com Módulo Empty Re: [Resolvido]Erro ao Deletar Registro com Módulo

    Mensagem  Alexandre Neves Sex 25 Jan 2013, 15:28

    Olá, linda Júlia
    Em vez de
    If Me.CNPJ.Value <> fCNPJ(Me.CNPJ) Then
    coloque
    If "" & Me.CNPJ.Value <> fCNPJ("" & Me.CNPJ) Then


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    julia-melo
    julia-melo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 72
    Registrado : 02/01/2013

    [Resolvido]Erro ao Deletar Registro com Módulo Empty Obrigada.

    Mensagem  julia-melo Sex 25 Jan 2013, 18:49

    Obrigada Alexandre pela ajuda e pelo "linda" Embarassed

    Mas funcionou em partes, pois não deixa o campo ficar vazio.

    Julia!
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8056
    Registrado : 05/11/2009

    [Resolvido]Erro ao Deletar Registro com Módulo Empty Re: [Resolvido]Erro ao Deletar Registro com Módulo

    Mensagem  Alexandre Neves Sex 25 Jan 2013, 18:54

    Olá, Júlia
    Gostos não se discutem, mas ...
    Diga a parte que não funcionou, para ver se lhe podemos ajudar.


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    julia-melo
    julia-melo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 72
    Registrado : 02/01/2013

    [Resolvido]Erro ao Deletar Registro com Módulo Empty Obrigada.

    Mensagem  julia-melo Sex 25 Jan 2013, 19:01

    Alexandre, obrigada pelo pronto atendimento!

    Já aconteceu alguns casos que tivemos que excluir o CNPJ ou o CPF cadastrado e isso não foi possível devido ao erro que mencionei no início do tópico; depois que inclui o código que você me passou a mensagem não aparece mais, porém ele o preenchimento do campo e não deixa ficar em branco.

    Entendeu?
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8056
    Registrado : 05/11/2009

    [Resolvido]Erro ao Deletar Registro com Módulo Empty Re: [Resolvido]Erro ao Deletar Registro com Módulo

    Mensagem  Alexandre Neves Sex 25 Jan 2013, 19:32

    Júlia,
    Veja que até me esqueci de lhe dizer para nomear controlos de forma normalizada. Ajudará o Access e quem precisar ler o código.
    Por exemplo: campo CPF, controlo TxtCPF

    Para o que pretende, utilize
    Private Sub CPF_BeforeUpdate(Cancel As Integer)
    If "" & Me.CPF.Value <> fCPF("" & Me.CPF) Then

    If Len("" & Me.CPF.Value) = 0 Then
    If MsgBox("Pretende limpar o CPF?", vbYesNo) = vbYes Then Exit Sub
    End If
    MsgBox "CPF inválido, por gentileza corrija.", vbInformation, "Sistema de Vendas"
    Cancel = True
    Else
    Me.CPF.InputMask = "000\.000\.000\-00;;_"
    End If
    End Sub


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    julia-melo
    julia-melo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 72
    Registrado : 02/01/2013

    [Resolvido]Erro ao Deletar Registro com Módulo Empty Obrigada.

    Mensagem  julia-melo Dom 27 Jan 2013, 19:10

    Maravilha. Laughing

    Mil Beijos! Funcionou!!!

    Resolvido!!!

      Data/hora atual: Qui 20 Jan 2022, 08:25