OVH Cloud OVH Cloud

connaître le nom d'un contrôle

2 réponses
Avatar
AB
Bonjour à tous,

J'ai placé plusieurs listes déroulantes dans une feuille.
Lorsque je clique droit dessus, et que je choisis affecter une
macro/nouvelle, une fenêtre s'ouvre dans l'éditeur VBA, où je peux saisir du
code.
Par exemple, celui-ci, qui affiche ou masque un objet en fonction du choix
fait dans une liste déroulante :
Sub Zonedeliste4_QuandChangement()
If Range("B32").Value = 2 Then
Feuil1.Shapes(2).Visible = False
Else: Feuil1.Shapes(2).Visible = True
End If
End Sub

Comment savoir à quel numéro d'objet shape correpondent les différents
contrôles présents dans la feuille ?
J'espère être clair...
Merci
André

2 réponses

Avatar
AV
Apparemment il s'agit de ListBoxes issues de la barre doutils Formulaire :

For Each X In ActiveSheet.ListBoxes
MsgBox X.Name
MsgBox X.Index
Next

PS : tu peux remplacer "ListBoxes" par "Shapes" ou par "DrawingObjects"
AV
Avatar
michdenis
Bonjour AB,

Si tu affecte cette macro à chacun des contrôles issus de ta barre d'outils "formulaire", tu devrais obtenir ce que tu
désires.

P.S. Le seul hic, comment feras-tu pour cliquer à nouveau sur des boutons invisibles ?

'-------------------------
Sub Zonedeliste4_QuandChangement()

With Feuil1
If .Range("B32").Value = 2 Then
.Shapes(.Shapes(Application.Caller).Name).Visible = False
Else
.Shapes(.Shapes(Application.Caller).Name).Visible = True
End If
End With

End Sub
'-------------------------


Salutations!



"AB" a écrit dans le message de news:O%23rxry$
Bonjour à tous,

J'ai placé plusieurs listes déroulantes dans une feuille.
Lorsque je clique droit dessus, et que je choisis affecter une
macro/nouvelle, une fenêtre s'ouvre dans l'éditeur VBA, où je peux saisir du
code.
Par exemple, celui-ci, qui affiche ou masque un objet en fonction du choix
fait dans une liste déroulante :
Sub Zonedeliste4_QuandChangement()
If Range("B32").Value = 2 Then
Feuil1.Shapes(2).Visible = False
Else: Feuil1.Shapes(2).Visible = True
End If
End Sub

Comment savoir à quel numéro d'objet shape correpondent les différents
contrôles présents dans la feuille ?
J'espère être clair...
Merci
André