MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido] Pesquisar próximo registo num SubForm

    Compartilhe
    avatar
    zcarloslopes
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 84
    Registrado : 28/10/2010

    [Resolvido] Pesquisar próximo registo num SubForm

    Mensagem  zcarloslopes em 12/10/2018, 18:49

    Boa tarde a todos,

    Mais uma vez venho pedir a vossa ajuda, desta vez para o seguinte:

    Tenho um FormA e um SubFormB com origem dos registos na TabelaA e TabelaB respetivamente relacionadas de Um para Muitos.

    No FormA tenho um Botão para pesquisar registos no FormA, fonciona OK, e um Botão para procurar registos no SubFormB, também tudo OK.

    O problema é quando tento procurar o próximo registo (String) no SubFormB, só avança no registo atual do FormA, isto é, tem outros registos no SubFormB com a mesma String, mas num outro registo do FormA, que não consigo procurar.

    Alguém tem uma dica de como posso alargar esta pesquisa (FindNext) a todos os registos do SubFormB?


    Muito obrigado

    Segue o código de pesquisa no SubFormB.


       Dim rst As Recordset

           If Not IsNull(Me.cboMoveTo2) Then

           Set rst = Forms!frm_SEFT_Form_1!frm_SEFT_Form_1a.Form.RecordsetClone

           rst.FindNext "NomeProfissional = '" & Me.cboMoveTo2.Column(1) & "'" 'string

           If Not rst.NoMatch Then
           
           Forms!frm_SEFT_Form_1!frm_SEFT_Form_1a.Form.Bookmark = rst.Bookmark
         
       Else
       
       MsgBox "Pesquisa do Formando/Formador Concluída!!"
       
       End If
       
       Me.cboMoveTo2.SetFocus
       End If
       rst.Close
       Set rst = Nothing


    Última edição por zcarloslopes em 29/10/2018, 09:41, editado 1 vez(es)
    avatar
    zcarloslopes
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 84
    Registrado : 28/10/2010

    Re: [Resolvido] Pesquisar próximo registo num SubForm

    Mensagem  zcarloslopes em 29/10/2018, 09:40

    Bom dia a todos!

    Consegui encontrar uma solução para o meu problema. Não ficou uma solução bonita, mas 100% funcional.

    Deixo aqui a minha linha de pensamento da solução para quem precisar no futuro.

    1º - Comecei por alterar a combox do Form onde seleciono o nome que se pretende procurar. Esta combox tinha a origem dos dados apenas na tabela do SubForm, então eu adicionei uma coluna (campo de auto-numeração) com comprimento 0cm com origem na tabela do Form, pois estas duas tabelas estão relacionadas de um para muitos.

    2º - Com o Recordset e FindFirst encontrado o primeiro registo do Form (campo auto-numerado) com o nome pretendido do SubForm, e memoriza o valor do campo do Form. (String1)

    3º - Com o código do meu post anterior localizo os registos iguais ao logo do SubForm.

    4º -No NoMatch do SubForm, pego na função Dlookup e procuro o valor seguinte à String1 do Form com o mesmo nome do SubForm. Memoriza novamente o valor do campo do Form, mas como (String2).

    5º - Repito a pesquisa no SubForm, e no NoMatch,

    6º - Repito a pesquisa no Form. A String2 vai alterando a cada nova pesquisa no Form.

    7º - No NoMatch do Form, pego a String1 novamente e volto ao início da pesquisa.

    Obrigado

      Data/hora atual: 26/3/2019, 03:00