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]Verificar se já existe registo, com base em dois campos no form

    avatar
    serbarbosaportugal
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 25/06/2014

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  serbarbosaportugal Sáb 14 Mar - 7:28

    Bom dia

    Tenho um formulário com base numa tabela com três campos:
    ID - Chave

    Rua - texto
    Numero - texto

    O que pretendo é adaptar o código do ilustrissimo Mestre JPaulo

    Alerta e Mostra Registo Duplicado no Ms Access

    Private Sub SeuCampoNoForm_BeforeUpdate(Cancel As Integer)
    Dim Busca As String
    Dim stLinkCriteria As String
    Dim rsc As DAO.Recordset
    Set rsc = Me.RecordsetClone
    Busca = Me.SeuCampoNoForm.Value
    stLinkCriteria = "SeuCampoNaTabela= '" & Busca & "'"
    If DCount("SeuCampoNaTabela", "NomeDaTabela", stLinkCriteria) > 0 Then
    Me.Undo
    MsgBox "Atenзгo " _
    & Busca & " registo jб existe." _
    & vbCr & vbCr & "Irб ser mostrado o Registo.", vbInformation _
    , "Duplicado"
    rsc.FindFirst stLinkCriteria
    Me.Bookmark = rsc.Bookmark
    End If
    Set rsc = Nothing
    End Sub

    Para verificar se o registo composto pelos dois campos já existe: caso sim, ir para esse registo, caso negativo, deixar adicionar novo registo.

    Obrigado!!
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  ÓscarSantos Sáb 14 Mar - 17:29

    Podes fazer assim:
    Dim rs As DAO.Recordset
    Dim sql as string

    Sql = ("select * from Suatabela where campo1 = "  & campoform1 & " and campo2 = " & campoform2 ) ' aqui vai verificar os dois campos do registo
    Set rs = CurrentDb.OpenRecordeset(sql)

    If rs.recordcount = 1 then
    Msgbox" registo ja existe"
    Me.undo
    Else
    Deixa inserir registo


    Abraco


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    avatar
    serbarbosaportugal
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 25/06/2014

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  serbarbosaportugal Sáb 14 Mar - 19:25

    Boas Óscar!

    Antes de mais, o meu obrigado.

    Dá me erro com a seguinte descrição
    Run time error 375
    Erro de sintaxe(operador em falta) na expressão de consulta ...

    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  ÓscarSantos Sáb 14 Mar - 19:56

    Que campos tens na tabela que queres que verifique e quais no form?


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    avatar
    serbarbosaportugal
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 25/06/2014

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  serbarbosaportugal Dom 15 Mar - 12:23

    Boa tarde Óscar

    A tabela tem o nome morada, com os seguintes campos:

    ID - Campo tipo Autonumeração

    Rua - Campo tipo texto

    Numero - Campo tipo texto.

    No formulário:

    txtRua - (Origem tabela, campo Rua)

    txtNumero - (Origem tabela, campo Numero).

    Os campos do form são os txtRua e txtNumero.

    Quero que a sua conjugação verifique a existência desse registo especifico na tabela... não crio um mesmo campo envolvendo estes dois, porque o campo rua provém de outra tabela que também utilizo para outra tabela e nessa, sem os números de prédio....

    Obrigado pela ajuda!!

    Obrigado pela Ajuda!!!
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  ÓscarSantos Dom 15 Mar - 13:33

    Dim rs As DAO.Recordset
    Dim sql as string

    Sql = ("select * from morada where rua '"  & txtrua & "' and numero = '" & txtnumero & "'" ) ' aqui vai verificar os dois campos do registo
    Set rs = CurrentDb.OpenRecordeset(sql)

    If rs.recordcount = 1 then
    Msgbox" registo ja existe"
    Me.undo
    Else
    Deixa inserir registo

    Importante para pesquisa:

    " select * from suatabela where numero = " & numero   ' Se for numero

    " select * from suatabela where nome = '" & nome & "'"    ' Se for nomes

    " select * from suatabela where data= #" & data & "#"   ' Se for data


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    avatar
    serbarbosaportugal
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 25/06/2014

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  serbarbosaportugal Dom 15 Mar - 14:47

    Boa tarde Óscar

    Já está a funcionar. Só preciso de mais uma pequena ajuda...
    Qual o código que tenho de inserir para logo após a caixa de mensagem a avisar que o registo existe, e após o me.Undo, seja direcionado, no formulário, para o registo já existente??

    Obrigado!
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  ÓscarSantos Dom 15 Mar - 14:51

    Se quiseresque mostre um registo existente basta que apos a mensagem

    Me.campoform = rs!campotabela
    Etc...

    Fazes o mesmo para tdos os campos do registo a mostrar no formulario.

    Entendes?


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    avatar
    serbarbosaportugal
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 25/06/2014

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  serbarbosaportugal Dom 15 Mar - 15:48

    Entendido!

    O meu muito obrigado pela inestimável ajuda!!

    Continuação de bom fim de semana!
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  ÓscarSantos Dom 15 Mar - 16:34

    De nada , o forum serve para tirar duvidas e principalmente aprender.

    Abraco


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    avatar
    serbarbosaportugal
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 25/06/2014

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  serbarbosaportugal Dom 15 Mar - 17:22

    É mesmo, tens toda a razão!!

    E claro, a inter ajuda que é disponibilizada é espetacular.

    Mais uma vez, o meu muito obrigado pela atenção!!
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  ÓscarSantos Dom 15 Mar - 17:31

    Abraco.


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos

    Conteúdo patrocinado


    [Resolvido]Verificar se já existe registo, com base em dois campos no form Empty Re: [Resolvido]Verificar se já existe registo, com base em dois campos no form

    Mensagem  Conteúdo patrocinado


      Data/hora atual: Qui 21 Nov - 19:07