OVH Cloud OVH Cloud

recup légende

3 réponses
Avatar
Patrice
Bonjour,

Sur un formulaire, avec le bouton intitul=E9 de la boite =E0=20
outils, j'ai cr=E9=E9 diff=E9rentes zones du style :

porte AV gauche
porte AV droite
porte AR gauche
porte AR droite
Capot
...

Je voudrais sur clic d'une des zones r=E9cup=E9rer la l=E9gende=20
comment faire ?

Merci

3 réponses

Avatar
Raymond [mvp]
Bonjour.

les étiquettes posent des problèmes si tu veux connaître le nom d'une
étiquette parmi les autres et n'écrire qu'une seule procédure pour
l'ensemble des étiquettes.
si tu as une fonction pour chaque étiquette tu fais:
Me.Monetiquette.Caption et tu auras son nom.
faut noter qu'on ne peut pas utiliser l'objet Screen pour tester
l'enfoncement d'une étiquette.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Patrice" a écrit dans le message de
news:181d701c449fa$bcfcc3f0$

Bonjour,

Sur un formulaire, avec le bouton intitulé de la boite à
outils, j'ai créé différentes zones du style :

porte AV gauche
porte AV droite
porte AR gauche
porte AR droite
Capot
...

Je voudrais sur clic d'une des zones récupérer la légende
comment faire ?

Merci
Avatar
Eric
"Patrice" écrivait


Bonjour,

Sur un formulaire, avec le bouton intitulé de la boite à
outils, j'ai créé différentes zones du style :

porte AV gauche
porte AV droite
porte AR gauche
porte AR droite
Capot
...

Je voudrais sur clic d'une des zones récupérer la légende
comment faire ?

Merci



Bonjour Patrice,

Tu devrais regarder la réponse de Christophe Campain du 18/05/04 au post
"Comment récupérer le nom d'un controle". J'ai testé sa procédure et ça
marche.

Extrait de sa réponse:

1- Tu créé un module de classe que tu nomes ClasseEtiquette.

2- Tu colles les lignes suivantes dans ce module :
'----------------------------------------------------------
Public WithEvents LabelGroup As Label
Private Sub LabelGroup_Click()
MsgBox LabelGroup.Name ' (Mets ta procédure)
End Sub
'----------------------------------------------------------
3- Dans le code de ton formulaire tu tapes ceci :
'----------------------------------------------------------
Dim LabelBoxes() As New ClasseEtiquette

Private Sub Form_Open(Cancel As Integer)
Dim LabelBoxesCount As Integer
Dim Ctl As Control

LabelBoxesCount = 0
For Each Ctl In Me.Controls
If Ctl.ControlType = acLabel Then
LabelBoxesCount = LabelBoxesCount + 1
Ctl.OnClick = "[Procédure événementielle]"
ReDim Preserve LabelBoxes(1 To LabelBoxesCount)
Set LabelBoxes(LabelBoxesCount).LabelGroup = Ctl
End If
Next Ctl
End Sub

A+
Eric

Avatar
Raymond [mvp]
Bonjour.

Tu trouveras une fonction simple sur la page :
http://access.vba.free.fr/fonction_unique.htm

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Patrice" a écrit dans le message de
news:181d701c449fa$bcfcc3f0$

Bonjour,

Sur un formulaire, avec le bouton intitulé de la boite à
outils, j'ai créé différentes zones du style :

porte AV gauche
porte AV droite
porte AR gauche
porte AR droite
Capot
...

Je voudrais sur clic d'une des zones récupérer la légende
comment faire ?

Merci