Alguém ja efetuaou essa façanha e pode compartilhar conosco?
5 participantes
[Resolvido]Executar um evento de um formulário carregado através de outro formulário
Pablo Neruda- Developer
- Respeito às regras :
Sexo :
Localização :
Mensagens : 344
Registrado : 17/09/2010
criquio- Moderador Global
- Respeito às regras :
Sexo :
Localização :
Mensagens : 11229
Registrado : 30/12/2009
- Mensagem nº2
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Detalha melhor por favor.
.................................................................................
Meu novo site: www.vcssistemas.com.br Clique aqui e veja um vídeo que explica como fazer pesquisas no forum. DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo: 1 - faça uma cópia do aplicativo 2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar 3 - use o Compactar/Reparar 4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem) Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário. Positive as mensagens que achar útil, no canto superior direito delas. |
Pablo Neruda- Developer
- Respeito às regras :
Sexo :
Localização :
Mensagens : 344
Registrado : 17/09/2010
- Mensagem nº3
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Tenho 2 formulários abertos (digamos 1 e 2), quero através do 2 executar (call) o evento load() do 1....
criquio- Moderador Global
- Respeito às regras :
Sexo :
Localização :
Mensagens : 11229
Registrado : 30/12/2009
- Mensagem nº4
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Não seria melhor botar o evento em um global module e chamá-lo nos dois forms?
.................................................................................
Meu novo site: www.vcssistemas.com.br Clique aqui e veja um vídeo que explica como fazer pesquisas no forum. DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo: 1 - faça uma cópia do aplicativo 2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar 3 - use o Compactar/Reparar 4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem) Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário. Positive as mensagens que achar útil, no canto superior direito delas. |
Pablo Neruda- Developer
- Respeito às regras :
Sexo :
Localização :
Mensagens : 344
Registrado : 17/09/2010
- Mensagem nº5
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Ele é um procedimento particular de um dos formulários.... Que ao estar este segundo aberto o primeiro o reconhece e efetua outro tipo de processamento, se eu trabalhasse com consultas lincadas aos meus forms seria somente dar um requery, mas eu me utilizo somente do VBA...
Estou utilizando a versão 2010, e um dos recursos que encontrei foi em um formulário efetuar o fechamento e a reabertura do outro dando o resultado esperado, porém com o incoveniente de digamos, piscar a tela.... (No W7 ficou até um efeito bonito...
Estou utilizando a versão 2010, e um dos recursos que encontrei foi em um formulário efetuar o fechamento e a reabertura do outro dando o resultado esperado, porém com o incoveniente de digamos, piscar a tela.... (No W7 ficou até um efeito bonito...
criquio- Moderador Global
- Respeito às regras :
Sexo :
Localização :
Mensagens : 11229
Registrado : 30/12/2009
- Mensagem nº6
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Esse seu formulário por acaso não tem cores fortes ou mistura de cores? Talvez seja isso que faça piscar.
.................................................................................
Meu novo site: www.vcssistemas.com.br Clique aqui e veja um vídeo que explica como fazer pesquisas no forum. DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo: 1 - faça uma cópia do aplicativo 2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar 3 - use o Compactar/Reparar 4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem) Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário. Positive as mensagens que achar útil, no canto superior direito delas. |
Pablo Neruda- Developer
- Respeito às regras :
Sexo :
Localização :
Mensagens : 344
Registrado : 17/09/2010
- Mensagem nº7
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Não... qdo me refiro a piscar e abri e fecha, no W7 é até legal, pelo fade out e fade in que o SO proporciona.... Parece uma paginação...
JPaulo- Moderador
- Respeito às regras :
Sexo :
Localização :
Mensagens : 11026
Registrado : 04/11/2009
- Mensagem nº8
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Olhem o simples;
Quando você cria um evento num form, ele por defeito fica em Private, altere esse evento para Public
Antes:
Private Sub Form_Load()
DoCmd.Maximize
End Sub
Depois:
Public Sub Form_Load()
DoCmd.Maximize
End Sub
No segundo form, é só chamar esse evento assim, por exemplo no pressionar de um botão:
Private Sub SeuBotao_Click()
Forms("PrimeiroFormulario").Form_Load
End Sub
Nota:
Não é necessario utilizar o Call ou o Forms!
Quando você cria um evento num form, ele por defeito fica em Private, altere esse evento para Public
Antes:
Private Sub Form_Load()
DoCmd.Maximize
End Sub
Depois:
Public Sub Form_Load()
DoCmd.Maximize
End Sub
No segundo form, é só chamar esse evento assim, por exemplo no pressionar de um botão:
Private Sub SeuBotao_Click()
Forms("PrimeiroFormulario").Form_Load
End Sub
Nota:
Não é necessario utilizar o Call ou o Forms!
.................................................................................
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
Utilize o Sistema de Busca do Fórum...
102 Códigos VBA Gratuitos...
Instruções SQL como utilizar...
criquio- Moderador Global
- Respeito às regras :
Sexo :
Localização :
Mensagens : 11229
Registrado : 30/12/2009
- Mensagem nº9
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Isso JP. Eu quis falar algo assim mas me confundi e escrevi sobre módulos, por causa de Public Function nos módulos, hehehe.
.................................................................................
Meu novo site: www.vcssistemas.com.br Clique aqui e veja um vídeo que explica como fazer pesquisas no forum. DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo: 1 - faça uma cópia do aplicativo 2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar 3 - use o Compactar/Reparar 4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem) Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário. Positive as mensagens que achar útil, no canto superior direito delas. |
JPaulo- Moderador
- Respeito às regras :
Sexo :
Localização :
Mensagens : 11026
Registrado : 04/11/2009
- Mensagem nº10
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Vivendo e aprendendo...
Feliz Ano Novo
Feliz Ano Novo
.................................................................................
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
Utilize o Sistema de Busca do Fórum...
102 Códigos VBA Gratuitos...
Instruções SQL como utilizar...
criquio- Moderador Global
- Respeito às regras :
Sexo :
Localização :
Mensagens : 11229
Registrado : 30/12/2009
- Mensagem nº11
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Esse é o barato da vida. Ela é um eterno aprendizado para quem quer aprender
Feliz 2011 a todos
Feliz 2011 a todos
.................................................................................
Meu novo site: www.vcssistemas.com.br Clique aqui e veja um vídeo que explica como fazer pesquisas no forum. DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo: 1 - faça uma cópia do aplicativo 2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar 3 - use o Compactar/Reparar 4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem) Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário. Positive as mensagens que achar útil, no canto superior direito delas. |
Pablo Neruda- Developer
- Respeito às regras :
Sexo :
Localização :
Mensagens : 344
Registrado : 17/09/2010
- Mensagem nº12
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Opa opa, sabia q tinha algo parecido.... Valeu mais uma vez pela dica....
Feliz Ano novo para todos!!!!....
e lembre-se se beber não desenvolva, se não vai ter que rever os códigos todos depois!!!! rsrsrsr
Feliz Ano novo para todos!!!!....
e lembre-se se beber não desenvolva, se não vai ter que rever os códigos todos depois!!!! rsrsrsr
JPaulo- Moderador
- Respeito às regras :
Sexo :
Localização :
Mensagens : 11026
Registrado : 04/11/2009
- Mensagem nº13
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Valew pelo retorno, não esquecer do "Resolvido".
.................................................................................
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
Utilize o Sistema de Busca do Fórum...
102 Códigos VBA Gratuitos...
Instruções SQL como utilizar...
RneoX- Avançado
- Respeito às regras :
Sexo :
Localização :
Mensagens : 246
Registrado : 26/07/2011
- Mensagem nº14
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
O Tópico é antigo, mas velho era isso que eu procurava, mas não sabia explicar como kkkkkkkkkkkkkkkk Coitado o Piloto que sofreu com minhas perguntas!
.................................................................................
Conhece meus projetos que ajudam os usuários a entender o funcionamento de várias funções encontradas aqui no fórum? também pode usa-lo para seus negócios ou para uso pessoal, não conhece? então visite aqui e veja como está bacana: Projeto Casco do Máximo Access v3.0 (Pré-Release 4.0)
Ser livre é ter liberdade para expressar suas idéias,
Ser diferente é ser especial e o reverso da igualdade,
Ser criativo é ser poderoso,
Ter conhecimentos e não dividir-los é ser egoísta e orgulhoso,
Ensinar é um prazer que todos devem ter por seus alunos, pois é dele que vem nossos troféus.
alecmuller- Novato
- Respeito às regras :
Sexo :
Localização :
Mensagens : 29
Registrado : 03/12/2019
- Mensagem nº15
Deu certo só que não
Boa tarde senhores,
Segui o exemplo do grandíssimo JPaulo e funcionou perfeitamente em meu código.. ou quase.
Tenho 3 formulários: frm_Continuidade_Ferias, frm_dt_Continuidade e frm_Portaria
No 1º eu tenho algumas funções que criam algumas consultas e, depois, manda abrir o 3º form. No evento ao fechar do 3º há uma estrutura if para verificar se o form foi aberto através do 1º, e, se sim, manda executar o que está no evento ao carregar do 1º.
Até aqui está funcionando perfeitamente e agradeço muito por ter dado o simples, mas importantíssimo, esclarecimento de que basta alterar a sub p/ public para fazer a mágica acontecer.
O meu problema surgiu ao fazer o mesmo c/ o 2º form.
Da mesma forma que o 1º, ele abre o form 3º e na estrutura if (a mesma que verifica se este foi aberto pelo 1º) há um comando p/ executar o que estiver no evento ao carregar do 2º form. O problema é que não está executando.
Mesmo sabendo que não, pensei que talvez pudesse ser a estrutura if, então troquei por select case e continua na mesma situação.
Troquei, então, de form_load p/ form_activate e fiz os devidos acertos no código do 2º form.
Dessa forma até funciona, mas não devidamente. Aparece a mensagem de erro "erro de definição de aplicativo ou de definição de objeto". Se eu clico em depurar e fecho a janela de código de vba que abre, funciona, já se eu clico em fim, não funciona.
Para ajudar a entender melhor a situação, segue os códigos abaixo:
1º form:
2º form:
3º form:
Desde já, agradeço a ajuda dos senhores!
Segui o exemplo do grandíssimo JPaulo e funcionou perfeitamente em meu código.. ou quase.
Tenho 3 formulários: frm_Continuidade_Ferias, frm_dt_Continuidade e frm_Portaria
No 1º eu tenho algumas funções que criam algumas consultas e, depois, manda abrir o 3º form. No evento ao fechar do 3º há uma estrutura if para verificar se o form foi aberto através do 1º, e, se sim, manda executar o que está no evento ao carregar do 1º.
Até aqui está funcionando perfeitamente e agradeço muito por ter dado o simples, mas importantíssimo, esclarecimento de que basta alterar a sub p/ public para fazer a mágica acontecer.
O meu problema surgiu ao fazer o mesmo c/ o 2º form.
Da mesma forma que o 1º, ele abre o form 3º e na estrutura if (a mesma que verifica se este foi aberto pelo 1º) há um comando p/ executar o que estiver no evento ao carregar do 2º form. O problema é que não está executando.
Mesmo sabendo que não, pensei que talvez pudesse ser a estrutura if, então troquei por select case e continua na mesma situação.
Troquei, então, de form_load p/ form_activate e fiz os devidos acertos no código do 2º form.
Dessa forma até funciona, mas não devidamente. Aparece a mensagem de erro "erro de definição de aplicativo ou de definição de objeto". Se eu clico em depurar e fecho a janela de código de vba que abre, funciona, já se eu clico em fim, não funciona.
Para ajudar a entender melhor a situação, segue os códigos abaixo:
1º form:
- Código:
Private Sub Cria_Exp_Port_Click() 'Botão no frm_Continuidade_Ferias
Call qryCessaFerias
Call InserePortaria
End Sub
- Código:
Public Sub Form_Load()
'Verifica se está tudo pronto para exportar a portaria p/ word.
If Me.Cont_Exportar = 1 Then
Call ExpPortCessar
Call qryCessaFerias_Excluir
Call qryInserePortaria_Excluir
Form!Cont_Exportar = 0
End If
End Sub
2º form:
- Código:
Private Sub Comando24_Click()
Call qryPortCont
Call InserePortaria
End Sub
- Código:
Public Sub Form_Load()
If Me.dt_Cont_Exportar = 1 Then
Call ExpPortCont
Call qryPortCont_Excluir
Form!dt_Cont_Exportar = 0
Form!Texto25 = 123
End If
End Sub
3º form:
- Código:
Private Sub Form_Close()
Dim vPort As Integer
Dim AtualizaCont As String
'Se o formulário foi aberto através do form de continuidade de férias, irá inserir a portaria no registro de continuidade
'If Me.Port_AbertoCont = 1 Then
' vPort = DLast("Port_Cod", "Portaria")
' AtualizaCont = "UPDATE Continuidade_Ferias SET Cont_Port_Cessar = " & vPort & " WHERE Cont_Cod = " & Me.Port_Cod_Cont.Value
' Forms!frm_Continuidade_Ferias!Cont_Exportar = 1
' DoCmd.RunSQL AtualizaCont
' Forms!frm_Continuidade_Ferias.Refresh
' Forms(frm_Continuidade_Ferias).Form_Load
'ElseIf Me.Port_AbertoCont = 2 Then 'neste caso, o form de portaria foi aberto através do dt_continuidade
' vPort = DLast("Port_Cod", "Portaria")
' AtualizaCont = "UPDATE dt_Continuidade_Ferias SET dt_Port_Continuidade = " & vPort & " WHERE dt_Cod = " & Me.Port_Cod_Cont.Value
' Forms!frm_dt_Continuidade!dt_Cont_Exportar = 1
' DoCmd.RunSQL AtualizaCont
' Forms!frm_dt_Continuidade.Refresh
' Forms(frm_dt_Continuidade).Form_Load
'End If
Select Case Me.Port_AbertoCont
Case 1
vPort = DLast("Port_Cod", "Portaria")
AtualizaCont = "UPDATE Continuidade_Ferias SET Cont_Port_Cessar = " & vPort & " WHERE Cont_Cod = " & Me.Port_Cod_Cont.Value
Forms!frm_Continuidade_Ferias!Cont_Exportar = 1
DoCmd.RunSQL AtualizaCont
Forms!frm_Continuidade_Ferias.Refresh
Forms(frm_Continuidade_Ferias).Form_Load
Case 2
vPort = DLast("Port_Cod", "Portaria")
AtualizaCont = "UPDATE dt_Continuidade_Ferias SET dt_Port_Continuidade = " & vPort & " WHERE dt_Cod = " & Me.Port_Cod_Cont.Value
Forms!frm_dt_Continuidade!dt_Cont_Exportar = 1
DoCmd.RunSQL AtualizaCont
Forms!frm_dt_Continuidade.Refresh
Forms(frm_dt_Continuidade).Form_Load
End Select
End Sub
Desde já, agradeço a ajuda dos senhores!
alecmuller- Novato
- Respeito às regras :
Sexo :
Localização :
Mensagens : 29
Registrado : 03/12/2019
- Mensagem nº16
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
Sobre minha última mensagem, consegui resolver meu problema. A solução foi simples.
No 3º form, dentro do "case 2", substituí "Forms(frm_dt_Continuidade).Form_Load" por "Call Form_frm_dt_Continuidade.Form_Load" e funcionou perfeitamente.
Fica a dica para quem ver passar pelo mesmo que eu futuramente.
No 3º form, dentro do "case 2", substituí "Forms(frm_dt_Continuidade).Form_Load" por "Call Form_frm_dt_Continuidade.Form_Load" e funcionou perfeitamente.
Fica a dica para quem ver passar pelo mesmo que eu futuramente.
Conteúdo patrocinado
- Mensagem nº17
Re: [Resolvido]Executar um evento de um formulário carregado através de outro formulário
» [Resolvido]executar um evento de um formulario a partir de outro Formulario
» [Resolvido]Executar função em um formulário ja aberto através de outro form
» Evento após o formulario ser carregado
» [Resolvido]Calcular, arrendondar e atualizar na tabela através do evento Ao Fechar do formulário
» [Resolvido]Executar um código de outro formulário
» [Resolvido]Executar função em um formulário ja aberto através de outro form
» Evento após o formulario ser carregado
» [Resolvido]Calcular, arrendondar e atualizar na tabela através do evento Ao Fechar do formulário
» [Resolvido]Executar um código de outro formulário