MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Como verificar se um controle de outro form está ativo/existe

    Compartilhe

    Eloirp
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 149
    Registrado : 15/06/2013

    [Resolvido]Como verificar se um controle de outro form está ativo/existe

    Mensagem  Eloirp em Sab 19 Jul 2014, 04:30

    Tenho um controle chamado BuscarProd que existe em vários forms e quero carregar ele com um valor de um form POP clicando duas vezes sobre o controle e aí carrega o valor em BuscarProd, porém este form POP é uma consulta cruzada e pode ser aberto em qualquer lugar do sistema através de CTRL+2, porém se o usuário clicar duas vezes quando estiver com o form ao "pai" que não tenha o campo vai dar erro... Então preciso colocar uma condição de saber de o controle está ativo eu resolvo isso... o que facilita é que tenho um form principal (Main_Menu) que possui um subform (SubFormAplicacao) onde carrego os forms com Parent.SubFormAplicacao.SourceObject... então a condição é sempre verificar se Forms!Main_Menu!SubFormAplicacao.Form!BuscarProd está ativo...

    Acredito que pela imagem anexa é possível entender com mais clareza...


    Código no form POP:
    Private Sub Produto_DblClick(Cancel As Integer)

       If condição??? Then
           Forms!Main_Menu!SubFormAplicacao.Form!BuscarProd = Me.Produto
           Forms!Main_Menu!SubFormAplicacao.Form!OEM.Value = Null
           Forms!Main_Menu!SubFormAplicacao.Form!CR.Value = Null
       End If
           
    End Sub
    Anexos
    Form X Pop.pdf
    Você não tem permissão para fazer download dos arquivos anexados.
    (273 Kb) Baixado 6 vez(es)

    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 5889
    Registrado : 05/11/2009

    Re: [Resolvido]Como verificar se um controle de outro form está ativo/existe

    Mensagem  Alexandre Neves em Sab 19 Jul 2014, 08:35

    Bom dia,
    If CurrentProject.AllForms.Item(NomeObjecto).IsLoaded Then


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    Eloirp
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 149
    Registrado : 15/06/2013

    Re: [Resolvido]Como verificar se um controle de outro form está ativo/existe

    Mensagem  Eloirp em Dom 20 Jul 2014, 14:22

    Olá Alexandre, obrigado pelo ajuda!
    Apliquei o modelo que você me passou mas não acontece nada... fiz vários testes em diferentes forms (com e sem o item BuscarProd), mas em nenhum caso acontece algo.

    Fiz assim:
    Private Sub Produto_DblClick(Cancel As Integer)
       If CurrentProject.AllForms.Item(BuscarProd).IsLoaded Then
           Forms!Main_Menu!SubFormAplicacao.Form!BuscarProd = Me.Produto
           Forms!Main_Menu!SubFormAplicacao.Form!OEM.Value = Null
           Forms!Main_Menu!SubFormAplicacao.Form!CR.Value = Null
       End If
    End Sub



    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 5889
    Registrado : 05/11/2009

    Re: [Resolvido]Como verificar se um controle de outro form está ativo/existe

    Mensagem  Alexandre Neves em Dom 20 Jul 2014, 14:39

    Boa tarde,
    Tem de colocar o nome entre aspas
    If CurrentProject.AllForms.Item("BuscarProd").IsLoaded Then


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    Eloirp
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 149
    Registrado : 15/06/2013

    Re: [Resolvido]Como verificar se um controle de outro form está ativo/existe

    Mensagem  Eloirp em Seg 21 Jul 2014, 01:18

    Alterei conforme o seu exemplo, mas não funcionou! Pois da erro e diz que objeto está fechado ou não existe!

    Meu aplicativo provavelmente é diferente dos demais por trabalhar com um subform no form principal (main_menu) e qdo chama um form pelo menu abre dentro deste form... apenas alguns pop não abrem neste subform.
    Anexei o Access com os forms envolvidos para que, se quiser dar uma olhada, talvez ajude...
    Claro que pode entrar pressionando shift para poder ver o código sem travar, pois ao abrir normalmente esconde o Access...

    login: teste
    senha: 1234

    Para chamar o form onde preciso colocar esta instrução é o cons_CR_Pop e chama ele pelo CTRL+2, aí já deixei o produto como valor padrão e basta dar dois cliques para rodar a instrução...

    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 5889
    Registrado : 05/11/2009

    Re: [Resolvido]Como verificar se um controle de outro form está ativo/existe

    Mensagem  Alexandre Neves em Seg 21 Jul 2014, 09:47

    Bom dia,
    Em formato não reconhecido. Coloque em 2003/2007


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    Avelino Sampaio
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3348
    Registrado : 04/04/2010

    Re: [Resolvido]Como verificar se um controle de outro form está ativo/existe

    Mensagem  Avelino Sampaio em Seg 21 Jul 2014, 09:52

    Olá!

    Eu não olhei o seu projeto mas uma alternativa seria vc utilizar o tratamento de erro.

    Ou utiliza um simples "On error resume next" ou intercepte o número do erro para gerar uma mensagem ao usuário


    On error goto TrataErro
     Seu código
    Sair:
     Exit Sub
    TrataErro:
     If err.number = xxxx then
       'Abra a caixa de mensagem
       msgbox " Sua mensagme..."
     else
       msgbox err.Description  & " Número: " & err.number
     end if
     resume sair:


    Sucesso!


    Última edição por Avelino Sampaio em Seg 21 Jul 2014, 13:01, editado 1 vez(es)


    .................................................................................
    ============ Quer aprender Access em alta velocidade ? ============

    || [Você precisa estar registrado e conectado para ver esta imagem.] Acesse o site UsandoAccess.com.br e veja um ótimo kit de ensino que tenho para você.

    ===========================================================

    Eloirp
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 149
    Registrado : 15/06/2013

    Re: [Resolvido]Como verificar se um controle de outro form está ativo/existe

    Mensagem  Eloirp em Seg 21 Jul 2014, 12:51

    Valeu Avelino! Problema resolvido....
    Valeu Alexandre pela ajuda... até tentei converter, mas dá uma mensagem que existem recursos que somente podem ser utilizados na versão atual e não deixa salvar no formato anterior...

      Data/hora atual: Qua 07 Dez 2016, 20:11