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]Impedir registos com campos duplicados

    avatar
    ACoelho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 13
    Registrado : 16/02/2016

    [Resolvido]Impedir registos com campos duplicados Empty [Resolvido]Impedir registos com campos duplicados

    Mensagem  ACoelho 14/5/2016, 23:19

    Boa noite
    copiei do Mestre VieiraSoft o seguinte código para impedir de inserir dados num formulário que já existem na tabela.
    O 1º campo OBRA_NOB é Numero e decimal
    O segundo é texto
    no 2º funciona na perfeição
    no 1º dá erro na linha Cancel = True
    Alguem me pode ajudar por favor?
    ---------------------------------
    Private Sub OBRA_NOB_AfterUpdate()
       If (Not IsNull(DLookup("[OBRA_NOB]", "OBRAS_SERVER", _
       "[OBRA_NOB] =" & Me!OBRA_NOB))) Then
       MsgBox "Já existe um registo de obra com o número..." & OBRA_NOB.Value, vbInformation, "Aviso"
       Cancel = True 'Cancela o evento
       Me!OBRA_NOB.Undo 'desfaz a digitação.
       End If

    End Sub
    ----------------------------------------------
    Private Sub ORCAM_NOB_BeforeUpdate(Cancel As Integer)

       If (Not IsNull(DLookup("[ORCAM_NOB]", "OBRAS_SERVER", _
       "[ORCAM_NOB] ='" & Me!ORCAM_NOB & "'"))) Then
       MsgBox "Já existe um orçamento registado com o número..." & ORCAM_NOB.Text, _
       vbInformation, "Aviso"
       Cancel = True 'cancela o evento.
       Me!ORCAM_NOB.Undo 'desfaz a digitação.
       End If

    End Sub
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Impedir registos com campos duplicados Empty Re: [Resolvido]Impedir registos com campos duplicados

    Mensagem  Celso Roberto 16/5/2016, 00:53

    Boa Noite

    Tente o seguinte:

    Substitui

    Cancel = True  por Exit Sub ou Exit Function


    Tente e veja se dá certo

    Abraços


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Impedir registos com campos duplicados Empty Re: [Resolvido]Impedir registos com campos duplicados

    Mensagem  FabioPaes 16/5/2016, 01:24

    E interessante o amigo postar o Erro que apresenta, e o que pretende... Pois se que apenas Voltar ao estado de Novo Registro (limpara tudo que foi sigitado) coloque:
    Me.Undo


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    avatar
    ACoelho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 13
    Registrado : 16/02/2016

    [Resolvido]Impedir registos com campos duplicados Empty Impedir registo duplicado

    Mensagem  ACoelho 16/5/2016, 09:22

    Caro Fabio Paes,
    obrigado pela sua disponibilidade,
    aqui vai o erro que dá

    Compile error:
    Variable not defined

    também experimentei o Me.Undo, limpa o campo mas foca o campo seguinte.
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Impedir registos com campos duplicados Empty Re: [Resolvido]Impedir registos com campos duplicados

    Mensagem  FabioPaes 16/5/2016, 13:42

    Entao, apos o .undo mova o Foco para o campo que pretende...


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    avatar
    ACoelho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 13
    Registrado : 16/02/2016

    [Resolvido]Impedir registos com campos duplicados Empty Impedir campo duplicado

    Mensagem  ACoelho 16/5/2016, 21:14

    Já percebi.... bastou colocar o código no beforeupdate e não no afterupdate.
    de qualquer modo obrigado

    Conteúdo patrocinado


    [Resolvido]Impedir registos com campos duplicados Empty Re: [Resolvido]Impedir registos com campos duplicados

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/3/2024, 16:41