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]Pesquisar valores duplicados em 3 campos diferentes

    leoavila7
    leoavila7
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 149
    Registrado : 04/12/2011

    [Resolvido]Pesquisar valores duplicados em 3 campos diferentes Empty [Resolvido]Pesquisar valores duplicados em 3 campos diferentes

    Mensagem  leoavila7 1/11/2015, 16:32

    Oi gente, tudo bem?
    Bem, criei uma tabela que possui 3 campos telefone (Tel1, Tel2, Tel3) para o mesmo registro. Tambem criei um formulario com os mesmos 3 campos (txtTel1, txtTel2, txtTel3).  No evento antes de atualizar de cada um desses campos do form, coloquei um codigo que verifica na tabela se esse numero ja esta cadastrado, e caso esteja ele barra a inserção do registro. Eu preciso de um codigo que leia os 3 campos na tabela antes de atualizar o campo, pois o telefone inserido no Tel1 de Fulano pode ser o Tel2 de Beltrano ou o Tel 3 de Cicrano...Vou postar o codigo que usei para a pesquisa de duplicados (Codigo conseguido aqui no forum), para que os sabios colegas possam me dizer se é possivel fazer uma adequação ou alterar a metodologia de pesquisa. Agradeço pela força de sempre.


    Código:
    Private Sub txtTel1_BeforeUpdate(Cancel As Integer)
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Set rs = CurrentDb.OpenRecordset("Select * from TabMotorista WHERE Tel1='" & Me.txtTel1 & "'")
    'Verifica a quantidade de registros com o CPF na tabela
    If rs.RecordCount > 0 Then
        MsgBox "Já existe um registro com esse numero de telefone.", vbCritical, "Registro duplicado"
        Me.txtTel1.SetFocus
        Cancel = True

    End If
    End Sub
    clynton
    clynton
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 309
    Registrado : 08/07/2013

    [Resolvido]Pesquisar valores duplicados em 3 campos diferentes Empty Re: [Resolvido]Pesquisar valores duplicados em 3 campos diferentes

    Mensagem  clynton 2/11/2015, 03:15

    Leonardo, tente aí...

    Código:
    Private Sub txtTel1_BeforeUpdate(Cancel As Integer)
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Set rs = CurrentDb.OpenRecordset("Select * from TabMotorista WHERE Tel1='" & Me.txtTel1 & "' Or Tel2='" & Me.txtTel1 & "' Or Tel3='" & Me.txtTel1 & "'")
    'Verifica a quantidade de registros com o CPF na tabela
        If rs.RecordCount > 0 Then
            MsgBox "Já existe um registro com esse numero de telefone.", vbCritical, "Registro duplicado"
            Me.txtTel1.SetFocus
            Cancel = True
        End If
    End Sub

    Para o campo txtTel2, coloque também Antes de atualizar:

    Código:
    Private Sub txtTel2_BeforeUpdate(Cancel As Integer)
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Set rs = CurrentDb.OpenRecordset("Select * from TabMotorista WHERE Tel1='" & Me.txtTel2 & "' Or Tel2='" & Me.txtTel2 & "' Or Tel3='" & Me.txtTel2 & "'")
    'Verifica a quantidade de registros com o CPF na tabela
        If rs.RecordCount > 0 Then
            MsgBox "Já existe um registro com esse numero de telefone.", vbCritical, "Registro duplicado"
            Me.txtTel2.SetFocus
            Cancel = True
        End If
    End Sub

    E enfim, para o campo Tel3, coloque:

    Código:
    Private Sub txtTel3_BeforeUpdate(Cancel As Integer)
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Set rs = CurrentDb.OpenRecordset("Select * from TabMotorista WHERE Tel1='" & Me.txtTel3 & "' Or Tel2='" & Me.txtTel3 & "' Or Tel3='" & Me.txtTel3 & "'")
    'Verifica a quantidade de registros com o CPF na tabela
        If rs.RecordCount > 0 Then
            MsgBox "Já existe um registro com esse numero de telefone.", vbCritical, "Registro duplicado"
            Me.txtTel3.SetFocus
            Cancel = True
        End If
    End Sub

    Abraço...


    .................................................................................
    Cumprimentos...


    Atenciosamente,
    Rogério Clynton Ribeiro


    __________________________________________________________________________

    "Ninguém é tão grande que não possa aprender e nem tão pequeno que não possa ensinar."
    leoavila7
    leoavila7
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 149
    Registrado : 04/12/2011

    [Resolvido]Pesquisar valores duplicados em 3 campos diferentes Empty Re: [Resolvido]Pesquisar valores duplicados em 3 campos diferentes

    Mensagem  leoavila7 2/11/2015, 18:25

    Funcionou perfeitamente Clynton, tentei usar algo parecido mas me enrolei no sql, por isso vim aqui pedir a ajuda. Muito obrigado meu caro, abraço!
    clynton
    clynton
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 309
    Registrado : 08/07/2013

    [Resolvido]Pesquisar valores duplicados em 3 campos diferentes Empty Re: [Resolvido]Pesquisar valores duplicados em 3 campos diferentes

    Mensagem  clynton 2/11/2015, 21:09

    Disponha Leonardo!
    O Fórum agradece o retorno...
    ...e estamos aqui para nos ajudar!

    Abraço...


    .................................................................................
    Cumprimentos...


    Atenciosamente,
    Rogério Clynton Ribeiro


    __________________________________________________________________________

    "Ninguém é tão grande que não possa aprender e nem tão pequeno que não possa ensinar."

    Conteúdo patrocinado


    [Resolvido]Pesquisar valores duplicados em 3 campos diferentes Empty Re: [Resolvido]Pesquisar valores duplicados em 3 campos diferentes

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 20:11