ACCESS : Déclencher du code sur un formulaire
Lazarey
Messages postés
3255
Date d'inscription
Statut
Membre
Dernière intervention
-
Lazarey Messages postés 3255 Date d'inscription Statut Membre Dernière intervention -
Lazarey Messages postés 3255 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'ai une question ACCESS à vous poser. on va dire que j'ai 2 formulaires : frm1 et frm2.
Sur frm1, il y a un bouton qui ouvre frm2. Ce que je voudrais faire, c'est lorsque je ferme frm2, du code vba soit exécuté sur frm1. Le problème, c'est que je ne sais pas sur quel évènement faire exécuter ce code.
Quelqu'un pour m'aider svp ???
Merci !
J'ai une question ACCESS à vous poser. on va dire que j'ai 2 formulaires : frm1 et frm2.
Sur frm1, il y a un bouton qui ouvre frm2. Ce que je voudrais faire, c'est lorsque je ferme frm2, du code vba soit exécuté sur frm1. Le problème, c'est que je ne sais pas sur quel évènement faire exécuter ce code.
Quelqu'un pour m'aider svp ???
Merci !
Configuration: Windows XP Firefox 3.0.10
7 réponses
-
Salut les gars !!!!
Merci de m'aider, mais ne vous prenez plus la tête car j'ai trouvé une solution qui fonctionne.
Tout d'abord une fonction qui teste si le formulaire est ouvert :
Function test_form_ouvert(nom_form As String) As Boolean Dim monform For Each monform In Forms If nom_form = monform.Name Then test_form_ouvert = True Exit Function End If Next test_form_ouvert = False End Function
Elle n'est pas de moi, je l'ai trouvée ailleurs puis un peu réadaptée.
Et enfin mon code, exécuté sur fermeture dur formulaire :
Private Sub Form_Close() If test_form_ouvert("Menu") Then [Forms]![Menu].Étiquette24.Caption = "En attente : " & calcul_attente2() [Forms]![Menu].Étiquette25.Caption = "En attente : " & calcul_attente3() [Forms]![Menu].Étiquette26.Caption = "En attente : " & calcul_attente4() [Forms]![Menu].Étiquette38.Caption = "En attente : " & calcul_dac2() [Forms]![Menu].Étiquette39.Caption = "En attente : " & calcul_dac3() [Forms]![Menu].Étiquette40.Caption = "En attente : " & calcul_dac4() End If End Sub
En fait, ce que je voulais faire c'était mettre à jour des étiquettes sur le formulaire qui reste ouvert. Donc ce code est exécuté, il met a jour les étiquettes sur le formulaire qui reste ouvert, et celui que je veux fermer se ferme.
Merci beaucoup à vous en tout cas ! -
soit plus claire dans tes explications.
tu veux éxécuté quoi sur frm -
Salut,
C'est quoi que t'as pas compris ?
J'ai 2 formulaires. Lorsque j'en ferme un, je veux exécuter du code sur l'autre (s'il est ouvert bien sur). -
Salut,
pas possible de manière simple.
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
soit quand tu affiches
frm2.show vbmodal,me
et du coup ton code dans frm1 s'arrete et attend que frm2 se decharge pour revenir mais bon c'est pas terrible
sinon tu fais une procedure public dans frm1 du style
public sub Traitement_Post_Frm2
msgbox "ok"
end sub
et dans ton code pour décharger frm2, à la fin de la procedure tu fais
call frm1.traitement_post_frm2
et voila...
-
soit un timer dans frm1 qui teste si frm2 est ouvert...
-
au niveau ressource, le timer c'est quand meme pas terrible surtout pour faire un truc aussi simple que ca...