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]Alterar a tabela (Fonte de Controle) de um subformulário via vba

    Compartilhe
    avatar
    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 119
    Registrado : 06/07/2011

    [Resolvido]Alterar a tabela (Fonte de Controle) de um subformulário via vba

    Mensagem  diegojacob em Seg 11 Maio 2015, 20:31

    Boa tarde,
    possuo 03 tabelas (em diferentes banco de dados, porém, contendo os mesmos campos) e as vinculei em um mesmo banco de dados, ficando:

    tbl_test_01
    tbl_test_02
    tbl_test_03

    Possuo um Formulário "Pai" e um subformulário "Filho", e gostaria que ao lececionar através de uma combo, onde informa qual tabela eu quero para o subformulário "Filho", ele alterasse a "Fonte de Condrole" do Subformulário "Filho".

    Testei utilizar o seguinte código, mas não funcionou:


    Private Sub Select_tabela_AfterUpdate()

    Dim tbl_subform As String

    Select Case Me.Select_tabela (Nome da Combo)

    Case tbl_test_01

    tbl_subform = "SELECT * from tbl_test_01"
    Me.[subformFilho].Form.RecordSource = tbl_subform
    Me.[subformFilho].Requery

    Case tbl_test_02

    tbl_subform = "SELECT * from tbl_test_02"
    Me.[subformFilho].Form.RecordSource = tbl_subform
    Me.[subformFilho].Requery

    Case tbl_test_03

    tbl_subform = "SELECT * from tbl_test_03"
    Me.[subformFilho].Form.RecordSource = tbl_subform
    Me.[subformFilho].Requery

    End Select

    End Sub


    Gostaria de um suporte do amigos do Fórum para fazer funcionar esse código ou um outra solução para eu obter o resultado final.
    Ver anexo o resultado esperado.

    Obrigado.

    Diego
    avatar
    daniloreiis
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 329
    Registrado : 14/02/2011

    Alterar a tabela (Fonte de Controle) de um subformulário via vba

    Mensagem  daniloreiis em Seg 11 Maio 2015, 20:40

    Olá boa tarde!

    poderia disponibilizar o projeto para melhor ajuda-lo ?


    .................................................................................
    Att, Danilo Reis
    -------------------------------------------------------------------------------------------------------------------------------------------------

    Se alguém não quiser trabalhar, não coma também.
    2 Tessalonicenses 3:10
    avatar
    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 119
    Registrado : 06/07/2011

    Re: [Resolvido]Alterar a tabela (Fonte de Controle) de um subformulário via vba

    Mensagem  diegojacob em Ter 12 Maio 2015, 12:42

    Segue um exemplo conforme solicitado.

    Origado.
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Alterar a tabela (Fonte de Controle) de um subformulário via vba

    Mensagem  JPaulo em Qua 20 Maio 2015, 11:47

    Olá;

    É no evento depois de atualizar;

    Código:
    Private Sub Select_tabela_AfterUpdate()
    Select Case Me.Select_tabela.Column(0)
            Case Is = "tbl_test_01"
        Me.subformFilho.Form.RecordSource = "SELECT * from tbl_test_01"
        Me.subformFilho.Form.Requery
            Case Is = "tbl_test_02"
        Me.subformFilho.Form.RecordSource = "SELECT * from tbl_test_02"
        Me.subformFilho.Form.Requery
            Case Is = "tbl_test_03"
        Me.subformFilho.Form.RecordSource = "SELECT * from tbl_test_03"
        Me.subformFilho.Form.Requery
    End Select
    End Sub


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    avatar
    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 119
    Registrado : 06/07/2011

    Re: [Resolvido]Alterar a tabela (Fonte de Controle) de um subformulário via vba

    Mensagem  diegojacob em Qua 27 Maio 2015, 17:26

    Olá mestre JPaulo.

    Funcionou perfeitamente, o evento eu coloquei errado no exemplo!
    O problema estava na String que criei e não estava sendo reconhecida e a alteração do Case para Case is =...

    Segue o exemplo final para os usuários que precisarem.

    Muito obrigado.
    Anexos
    Exemplo_Fonte_de_Controle.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (28 Kb) Baixado 31 vez(es)
    avatar
    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 119
    Registrado : 06/07/2011

    Re: [Resolvido]Alterar a tabela (Fonte de Controle) de um subformulário via vba

    Mensagem  diegojacob em Qua 27 Maio 2015, 17:33

    Tópico finalizado!
    Não consigo mudar o status para resolvido, favor alterar para mim.

    Obrigado.
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Alterar a tabela (Fonte de Controle) de um subformulário via vba

    Mensagem  JPaulo em Qui 28 Maio 2015, 15:49

    Obrigado pelo retorno o forum agradece.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    avatar
    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 119
    Registrado : 06/07/2011

    Re: [Resolvido]Alterar a tabela (Fonte de Controle) de um subformulário via vba

    Mensagem  diegojacob em Ter 02 Jun 2015, 18:48

    Mestre,
    teria como, ao alterar a tabela do subformulário, fazer com que altere também uma consulta de uma caixa de listagem?

    Eu uso uma caixa de listagem para selecionar um registro no subformulário e ao alterar a tabela do subformulário, ele alterava também a consulta da caixa de listagem (List box), pois tenho que selecionar o registro referente a tabela alterada, logo, tenho que trocar a consulta da lista para que fique com os mesmos registros da tabela selecionada.

    ex:

    ...

    Case Is = "tbl_test_01"

    'SubForm
    Me.subformFilho.Form.RecordSource = "SELECT * from tbl_test_01"
    Me.subformFilho.Form.Requery

    'Caixa de listagem (list box)
    Me.minha_lista.RecordSource = "SELECT * from Qry_test_01"
    Me.minha_lista.Requery

    Pois dessa forma está ocorrendo erro no RecordSource.


    avatar
    Caio
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 301
    Registrado : 27/04/2015

    Re: [Resolvido]Alterar a tabela (Fonte de Controle) de um subformulário via vba

    Mensagem  Caio em Qui 24 Nov 2016, 13:25

    Conseguiu resolver diegojacob?

    Tenho a mesma dúvida!

      Data/hora atual: Qua 23 Ago 2017, 01:47