Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/10/2011, 15h15   #1
Membre du Club
 
Inscription : juillet 2005
Messages : 275
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 275
Points : 58
Points : 58
Par défaut simuler évènement click de controles dans un sous formulaire

Bonjour,

j'ai un sous formulaire placé dans un formulaire. Pour chaque contrôle situé dans le détail du sous formulaire, j'aimerai "récupérer" l'évènement click mais pas moyen. Mon bout de code du sous formulaire :

Code :
1
2
3
4
5
6
7
8
Private Sub Form_Click()
 Dim Ctl As Controls
 For Each Ctl In Me.Section(acDetail).Controls
  If Ctl.Click Then
 'Traitement
  End If
  Next
End Sub
J'ai essayé également l'évènement Détail_Click(), rien ne se passe. Après pas mal de recherches, je ne trouve pas de solutions donc si vous pouviez m'éclairer ?
__________________
Merci de votre aide
kgb1917 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2011, 17h01   #2
Membre Expert
 
Homme Jacques Petiot
Indépendant développeur et formateur
Inscription : octobre 2007
Messages : 891
Détails du profil
Informations personnelles :
Nom : Homme Jacques Petiot
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Indépendant développeur et formateur
Secteur : Conseil

Informations forums :
Inscription : octobre 2007
Messages : 891
Points : 1 333
Points : 1 333
Hello
Déjà, est ce que ta routine commence de s'exécuter ou pas?
elle devrait s'exécuter quand tu clique n'importe où, sauf dans un contrôle.
Détail_click ne s'exécute que quand tu clique dans le corps du détail, en dehors de tout contrôle. (ça n'est pas naturel de cliquer dans le vide)
C'est pour ça que pour gérer l'évènement click de de chaque contrôle, je mets un programme à chacun.
__________________
-------------------Simplifi----------comme si tout était simple--------
Simplifi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2011, 17h17   #3
Membre du Club
 
Inscription : juillet 2005
Messages : 275
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 275
Points : 58
Points : 58
Re,

déjà merci de me répondre.

ensuite, non, la routine ne s'exécute pas qd je clique sur les contrôles placés dans la section détail.

Citation:
pour gérer l'évènement click de de chaque contrôle, je mets un programme à chacun
Pour x controles, x fois la même procédure ??? Y a pas moyen d'optimiser tout ça ???
__________________
Merci de votre aide
kgb1917 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2011, 22h25   #4
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 256
Points : 5 256
Salut,

Comme proposé par simplifi, si le programme est réalisé par une fonction "TaFonction", tu peux le faire dynamiquement en attribuant cette fonction sur ouverture de ton formulaire, à tous les contrôle de la section détail, du style :

Code :
1
2
3
4
5
6
7
8
9
10
11
Private Sub Form_Open(Cancel As Integer)
 
Dim Ctl As Controls
 
 For Each Ctl In Me.Section(acDetail).Controls
 
    Ctl.OnClick ="=TaFonction()"
 
 Next
 
End sub
A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2011, 11h07   #5
Membre du Club
 
Inscription : juillet 2005
Messages : 275
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 275
Points : 58
Points : 58
Re,

il faut changer cette ligne :
Par celle-ci :
et tout roule...
__________________
Merci de votre aide
kgb1917 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h08.


 
 
 
 
Partenaires

Hébergement Web