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]Registros Duplicados

    avatar
    Convidado
    Convidado


    [Resolvido]Registros Duplicados Empty Registros Duplicados

    Mensagem  Convidado 1/4/2011, 18:20

    O Seguinte código do repositório sobre registros duplicados"

    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



    Poderiam me falar onde eu o aplico e como fazer o uso correto do mesmo?

    Fico Grato..
    Obrigado
    Haryson
    Jungli
    Jungli
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 713
    Registrado : 07/05/2010

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  Jungli 1/4/2011, 20:00

    Veja este exemplo ... ele verifica se o registro é duplicado se sim mostra o registro no form.

    Public Sub ProcDuplicado()
    'Exemplo do mestre JPaulo
    'última modificação: Glicerio Junior (Jungli) ... 01.04.2011
    Dim r As DAO.Recordset
    Dim sCriterio As String
    Dim cancel As Integer
    'pNome = campo no formulário e na tabela
    sCriterio = "([pNome] = '" & Me![pNome] & "') "

    Set r = Me.RecordsetClone
    r.FindFirst sCriterio
    '...
    If r.NoMatch Then
    Exit Sub
    Else
    If MsgBox("Existe um Cliente cadastrado com este Nome!" & vbCrLf & _
    "Deseja encontra-lo?" _
    , vbYesNo + vbInformation, "Atenção") = vbYes Then
    cancel = True
    Me.Undo
    Me.Bookmark = r.Bookmark
    End If
    End If
    Set r = Nothing
    End Sub

    Private Sub pNome_AfterUpdate()
    ProcDuplicado
    End Sub
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  vieirasoft 1/4/2011, 21:26

    Movi o tópico porque o mesmo foi colocado no sitio indevido
    avatar
    Convidado
    Convidado


    [Resolvido]Registros Duplicados Empty Boa noite Jungli.. cumprimentando...

    Mensagem  Convidado 1/4/2011, 23:13

    Tem como voce me enviar um BD com o form e o uso do código?

    se tiver como eu agradeço

    Harysohn@hotmail.com
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  vieirasoft 1/4/2011, 23:50

    Amigo:

    Abra um módulo na secção módulos e cole esse código. Para ser mais fácil chame a função com uma macro.
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  vieirasoft 6/4/2011, 10:58

    Resolveu o problema? Agradecemos feedback
    avatar
    Convidado
    Convidado


    [Resolvido]Registros Duplicados Empty Amigo Vieira, cumprimentando-lhe....

    Mensagem  Convidado 6/4/2011, 13:30

    Pergunto:

    Veja este código aqui do site:

    Public Sub DetetaDuplicidade()
    'By JPaulo ® Maximo Access
    Dim rst As DAO.Recordset
    Dim strCriteria As String

    strCriteria = "([Campo1] = '" & Me.Campo1 & "') OR ([Campo2] = '" & Me.Campo2 & "')"

    Set rst = Me.RecordsetClone
    rst.FindFirst strCriteria

    If rst.NoMatch Then
    Exit Sub
    Else
    If MsgBox("Existe cliente cadastrado com este Nome!" & Chr(10) + Chr(13) & "Deseja encontra-lo?", vbYesNo + vbInformation, "Atenção") = vbYes Then
    Cancel = True
    Me.Undo
    Me.Bookmark = rst.Bookmark
    End If
    End If
    Set rst = Nothing
    End Sub


    Private Sub Campo1_BeforeUpdate(Cancel As Integer)
    Call DetetaDuplicidade
    End Sub


    Private Sub Campo2_BeforeUpdate(Cancel As Integer)
    Call DetetaDuplicidade
    End Sub


    Não seria melhor eu usar esse ao invés do outro?

    poderia me explicar quais as diferenças?

    Eu coloquei esse código mas não retornou nenhuma msg em um registro duplicado

    Aguardo...

    Obrigado
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  JPaulo 6/4/2011, 13:49

    Qual a sua duvida nesses codigos ?

    Não funcionam ?

    Quais os nomes corretos da tabela, dos campos e quais as suas formatações ?


    .................................................................................
    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]Registros Duplicados Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Registros Duplicados Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Registros Duplicados Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Registros Duplicados Empty Formatacao...

    Mensagem  Convidado 6/4/2011, 13:54

    o Campo que é o principal da tabela é o campo StrNome (nome do Cliente)

    Como faço pra inserir o comando De encontrar e deletar Duplicidade?

    Obrigado....

    Em tempo João Paulo... tenho uma outra questão no forum sobre Atualização de tabelas que inclusive o Qriquio enviou uma instrução.. se puder me ajudar naquela questão tambem eu ficarei grato. Obrigado...
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  JPaulo 6/4/2011, 14:01

    Então é só um campo e é texto.

    Certo ?


    .................................................................................
    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]Registros Duplicados Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Registros Duplicados Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Registros Duplicados Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Registros Duplicados Empty Exato

    Mensagem  Convidado 6/4/2011, 14:02

    é o Campo onde fica o nome do cliente....

    Pode ser até dois campos, ficaria melhor pra confirmar realmente a duplicicade

    Obrigado
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  JPaulo 6/4/2011, 14:09

    Diga-me para finalizar, quais os nomes corretos desses dois campos na Tabela e o nome dos mesmos no formulario e se são os dois Texto.


    .................................................................................
    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]Registros Duplicados Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Registros Duplicados Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Registros Duplicados Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Registros Duplicados Empty Retornando

    Mensagem  Convidado 6/4/2011, 14:16

    Na Tabela: Campo1 = StrNome, Campo2 = strEndereco

    No form Campo1 Caixa Texto = StrNome, Campo2 = Endereco
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  JPaulo 6/4/2011, 14:26

    Tente assim como está, se não der tem de colocar aqui parte do seu bd para analise.


    Public Sub DetetaDuplicidade()
    'By JPaulo ® Maximo Access
    Dim rst As DAO.Recordset
    Dim strCriteria As String

    strCriteria = "([StrNome] = '" & Me.StrNome & "') OR ([strEndereco] = '" & Me.Endereco & "')"

    Set rst = Me.RecordsetClone
    rst.FindFirst strCriteria

    If rst.NoMatch Then
    Exit Sub
    Else
    If MsgBox("Existe cliente cadastrado com este Nome!" & Chr(10) + Chr(13) & "Deseja encontra-lo?", vbYesNo + vbInformation, "Atenção") = vbYes Then
    Cancel = True
    Me.Undo
    Me.Bookmark = rst.Bookmark
    End If
    End If
    Set rst = Nothing
    End Sub


    Private Sub StrNome_BeforeUpdate(Cancel As Integer)
    Call DetetaDuplicidade
    End Sub


    Private Sub Endereco_BeforeUpdate(Cancel As Integer)
    Call DetetaDuplicidade
    End Sub



    .................................................................................
    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]Registros Duplicados Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Registros Duplicados Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Registros Duplicados Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Registros Duplicados Empty Onde Coloco?

    Mensagem  Convidado 6/4/2011, 14:28

    Coloco toda a instrucão no form?

    ou a funcao Deleta em um módulo?

    Qual a funcção esperada desse comando?

    Quando abre o form ele encontra e deleta automaticamente?
    emitindo a MSG?
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  JPaulo 6/4/2011, 14:38

    http://dl.dropbox.com/u/771097/Harysohn%20Pedrosa%20Pina.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]Registros Duplicados Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Registros Duplicados Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Registros Duplicados Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Registros Duplicados Empty Em tempo

    Mensagem  Convidado 6/4/2011, 14:49

    O meu sistema cadastra detentos e gera um Numero de prontuário FIXo para cada detento...
    Estou usando atualmente a numeracão automatica pra isso.. o incoveniente é que se deletar um registro duplicado...
    não posso mais usar aquela numeracão... Tem como me enviar um exemplo de auto numercao que não seja a do Campo Chave?

    Obrigado
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  JPaulo 6/4/2011, 14:53

    Amigão, não leve a mal, mas a questão deste tópico está Resolvida, ou seja deteta a duplicidade.

    Nova duvida novo tópico e antes disso dar uma procurada neste fórum, aqui tem muita coisa.


    .................................................................................
    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]Registros Duplicados Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Registros Duplicados Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Registros Duplicados Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Registros Duplicados Empty Ok

    Mensagem  Convidado 6/4/2011, 15:03

    Ok e agradeço pela atenção. mas ainda com relação a esse tópico...
    tem como ele procurar a duplicidade juntos? com os dois campos

    pois como está ele acusa pra um ou (or) para o outro...

    tem como especificar a duplicidade para os dois campos juntos?

    pois pode ocorrer que eu tenha duas pessoas do mesmo nome, mas com endereços diferentes...

    Se puder agradeço
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  JPaulo 6/4/2011, 15:42

    Claro que sim amigão.

    Mude o OR por AND

    strCriteria = "([StrNome] = '" & Me.strNome & "') OR ([strEndereco] = '" & Me.Endereco & "')"

    strCriteria = "([StrNome] = '" & Me.strNome & "') AND ([strEndereco] = '" & Me.Endereco & "')"


    .................................................................................
    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]Registros Duplicados Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Registros Duplicados Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Registros Duplicados Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Registros Duplicados Empty Obrigado

    Mensagem  Convidado 6/4/2011, 15:44

    Ja tinha feito isto, obrigado pela atencão e ajuda..
    perdoe-me qualquer rata...
    Obrigado e tenha um bom dia

    Harysohn
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  JPaulo 6/4/2011, 15:45

    Tranquilo, precisando de novo dê um grito.


    .................................................................................
    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]Registros Duplicados Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Registros Duplicados Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Registros Duplicados Folder_announce_new Instruções SQL como utilizar...

    Conteúdo patrocinado


    [Resolvido]Registros Duplicados Empty Re: [Resolvido]Registros Duplicados

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 27/4/2024, 22:06