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]Como detectar e alertar para valores repetido num campo?

    avatar
    jess
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 77
    Registrado : 17/09/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Como detectar e alertar para valores repetido num campo?

    Mensagem  jess 4/12/2010, 14:37

    Boa tarde

    Fiz uma pesquisa pelo fórum acerca deste tema e encontrei alguns exemplos parecidos mas não esclarecem por completo a minha dúvida.

    Tenho uma tabela com campo numérico estando esse campo como chave primária. No Access 2007 acontece que, se no formulário acoplado, eu introduzir um valor repetido nesse campo, não é exibido qualquer alerta da repetição e esse valor pura e simplesmente é ignorado. Quem está a fazer o registo pensa que ficou guardado mas isso não acontece.
    Pretendo que ao introduzir um valor repetido, nesse campo em particular, seja exibido um alerta para que quem regista tenha noção da necessidade de correcção.

    Alguém pode ajudar com um código que se possa introduzir no "Depois de actualizar" de modo a resolver esta questão?

    Obrigado antecipadamente

    jess


    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  vieirasoft 4/12/2010, 15:08

    Amigo veja essa rotina e adapte


    If (Not IsNull(DLookup("[meucampo]", "nometabela", _
    "[meucampo] ='" & Me!meucampo & "'"))) Then
    MsgBox "O xxxxxxxx já está cadastrado no sistema..." & meucampo.Text, _
    vbInformation, "Aviso"
    Cancel = True 'cancela o evento.
    Me!meucampo.Undo 'desfaz a digitação.
    End If

    Bom trabalho
    avatar
    jess
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 77
    Registrado : 17/09/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  jess 4/12/2010, 17:05

    Obrigado pela sugestão.

    Está a dar erro dizendo tipo de dados incorrecto na expressão de critérios.

    Para exemplificar melhor escrevi assim o código:

    Private Sub Texto216_AfterUpdate()
    If (Not IsNull(DLookup("[Episodio]", "tblTabela1", "[Episodio] ='" & Me!Episodio & "'"))) Then
    MsgBox "Já existe episódio com este número. Corrija para prosseguir", vbCritical, "Aviso"
    Me.Texto216.SetFocus
    End If

    Pelo que diz o alerta o erro estará no critério.

    O código não tem todas as linhas sugeridas mas para o que pretendo acho que funciona bem desde que se ultrapasse o erro do critério.
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  vieirasoft 4/12/2010, 17:06

    Jess

    Coloque a rotina de código no evento before update (antes de atualizar), a culpa foi minha por não ter referido isso. Aceite as minhas desculpas.
    avatar
    jess
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 77
    Registrado : 17/09/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  jess 4/12/2010, 17:46

    Private Sub Texto216_BeforeUpdate(Cancel As Integer)
    If (Not IsNull(DLookup("[Episodio]", "tblTabela1", _
    "[Episodio] ='" & Me!Episodio & "'"))) Then
    MsgBox "O xxxxxxxx já está cadastrado no sistema..." & Episodio.Value, vbInformation, "Aviso"
    Cancel = True 'cancela o evento.
    Me!Episodio.Undo 'desfaz a digitação.
    End If

    Escrevi o código acima e continuou a dar o erro nos dados do critério.
    Não sei se tem algo a ver com o facto do campo episódio ser um campo numérico.
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  vieirasoft 4/12/2010, 17:50

    E por acaso esse campo numérico é chave primária?
    avatar
    jess
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 77
    Registrado : 17/09/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  jess 4/12/2010, 17:56

    Sim, aliás tinha-o referido na apresentação da minha dúvida.
    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]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  criquio 4/12/2010, 17:58

    Desculpem a intromissão, mas para campo numérico não seria o caso de tirar as aspas simples?

    Private Sub Texto216_AfterUpdate(Cancel As Integer)
    If (Not IsNull(DLookup("[Episodio]", "tblTabela1", _
    "[Episodio] =" & Me!Episodio))) Then
    MsgBox "O xxxxxxxx já está cadastrado no sistema..." & Episodio.Value, vbInformation, "Aviso"
    Cancel = True 'cancela o evento.
    Me!Episodio.Undo 'desfaz a digitação.
    End If


    Eu costumo usar no AfterUpdate mesmo.


    .................................................................................
    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.

    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  vieirasoft 4/12/2010, 18:02

    E desde quando a chave primária repete???? Quase que aposto que é sequencial, numeração automática, mas se não for então deve fazer o seguinte:

    Aceder à tabela e no campo Indexado > escolher > Sim (duplicação não autorizada)e já não precisa de rotina nenhuma.
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  vieirasoft 4/12/2010, 18:07

    Obrigado Criquio, mas ele está a falar num campo chave primária, então se colocar Indexado > escolher > Sim (duplicação não autorizada), não precisa da rotina pois estou a ver os problemas que irá dar depois e se é campo chave primária o lógico será isto.
    avatar
    jess
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 77
    Registrado : 17/09/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  jess 4/12/2010, 18:14

    Eu sei que não repete!
    Não aposte porque perde na questão da numeração automática.É um campo numérico que é introduzido pelo utilizador que efectua o registo.
    Não é necessário irritar-se, à semelhança do que aconteceu há alguns dias, pela forma como me respondeu.
    Eu fiz uma introdução à minha dúvida, penso que com clareza. Lá explico as características do campo em questão e o porquê de, apesar de ser chave primária, ser necessário ter um alerta.
    Eu não sou informático e tenho dúvidas como toda a gente que apenas manipula este programa como hobby. Se for entendido que pessoas como eu não têm lugar neste espaço, que seja dito abertamente e eu deixarei de incomodar este ecossistema com as minhas dúvidas.

    Se fui ofensivo as minhas desculpas.

    Vou dar por resolvido o tópico e procurarei ajuda noutro sítio.

    Boa tarde a todos
    avatar
    jess
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 77
    Registrado : 17/09/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  jess 4/12/2010, 18:25

    Para encerrar os meus sinceros agradecimentos ao criquio que resolveu o meu problema.

    Muito obrigado
    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]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  criquio 4/12/2010, 18:25

    Amigo jess, acalme-se. Tenho certeza que a intenção não foi ofender-lhe. Talvez tenha havido uma forma de falar diferente, o que é comum a todos nós, pois cada um tem suas particularidades. Mas creio que foi só uma forma de se expressar. A função de um forum é justamente ajudar nos esclarecimentos de dúvidas, tanto de iniciantes quanto de quem já tem alguma bagagem, e pode estar certo de que estamos aqui para doar, receber e compartilhar conhecimentos.


    .................................................................................
    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.

    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  vieirasoft 4/12/2010, 18:30

    Amigo Jess

    Ninguém se irritou consigo e apesar das palavras terem muita força (segundo se diz), não pode avaliar pela escrita o bom ou mau humor de cada um. Estamos aqui para ajudar e só isso, e não para ofender seja quem for. Ninguém o maltratou. Parece que você é demasiado susceptível, lamento, pois só estamos a realizar o nosso trabalho.

    avatar
    jess
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 77
    Registrado : 17/09/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  jess 4/12/2010, 18:33

    Amigo criquio, obrigado pela sua manifestação de disponibilidade. Aliás é assim que eu entendo que deve ser o espírito de um fórum. Eu participo em vários fóruns, de outros temas que não informática e Access em particular, e o espírito costuma ser "ajudar e ser ajudado". Claro que aqui tenho pouco para ajudar devido aos meus fracos conhecimentos. Até hoje tem havido pessoas como você, o Dilson e o JPaulo e que me tem esclarecido com simpatia e precisão algumas das minhas dúvidas.
    Sem querer entrar em diálogos que não levam a a nada só digo que quem escreve isto: "E desde quando a chave primária repete????" não demonstra muita paciência para não lhe chamar outra coisa.

    Cumprimentos e agradecimentos a todos.

    jess
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  vieirasoft 4/12/2010, 19:15

    Amigo Jess

    Existem coisas que podem passar em branco e serem ignoradas, outras merecem ser realçadas.

    Não me faz diferença nenhuma o que você postou acima, mas para que fique e conste:

    Pelo menos recebeu a minha ajuda em 4 postes neste fórum. Num deles prontifiquei-me a baixar a sua base de dados, estudei-a, alterei-a e entreguei a mesma conforme o solicitado. Mais paciência que isto? Mais solidariedade que isto? Mais disponibilidade que isto?

    Agradeço que nem responda, pois nem é minha intenção alimentar qualquer tipo de quezília. Foi só para lhe avivar a memória da ingratidão.

    Sds
    avatar
    jess
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 77
    Registrado : 17/09/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  jess 4/12/2010, 20:49

    Tinha decidido não escrever mais nada neste post mas não posso ficar calado para que não seja tido como avestruz com a cabeça enfiada na areia.
    Desde que me registei como membro deste fórum o moderador vieirasoft ajudou-me em 7 dúvidas por mim colocadas e em todas elas obteve os respectivos agradecimentos.
    Neste post em particular quando o dei por terminado escrevi "Cumprimentos e agradecimentos a todos" o que naturalmente também inclui o moderador vieirasoft.


    Mais uma vez os meus cumprimentos e agradecimentos a todos

    jess
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  vieirasoft 4/12/2010, 21:01

    Amigo Jess

    Também tinha decidido o mesmo, mas continuo firme na vontade de o ajudar, tanto que gostava de saber se realmente solucionamos o seu problema ou se temos que procurar outra alternativa. Por favor, retorne.
    avatar
    jess
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 77
    Registrado : 17/09/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  jess 4/12/2010, 21:11

    Caro vieirasoft

    Após a sugestão do criquio, no sentido de retirar as aspas, eu respondi que o problema do erro de critério ficou solucionado e neste momento tenho o que pretendo a funcionar. Ou seja, impedir que se percam registos devido a utilizadores menos atentos que possam não se aperceber de que o valor está repetido. Como eu tinha referido, nos testes que fiz no Access 2007, no campo com chave primária o registo repetido é ignorado, não fica registado (isto de facto não é novidade) e não há nenhum alerta a avisar deste facto (isto sim preocupava-me). Para quem não estiver atento perde-se o registo. Agora com o seu código e a sugestão do criquio tenho o problema resolvido.
    Cumprimentos

    jess
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  vieirasoft 4/12/2010, 21:14

    Obrigado Jess e retorne sempre

    Abs

    Conteúdo patrocinado


    [Resolvido]Como detectar e alertar para valores repetido num campo? Empty Re: [Resolvido]Como detectar e alertar para valores repetido num campo?

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 03:02