Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA: comment connaitre le nom de la liste déroulante qui a appelé la macro?

11 réponses
Avatar
Laurent
bonjour



j'ai 42 listes déroulantes qui appellent des macros identiques

donc, je ne veux pas faire 42 macros mais une qui s'adapterait à
chacune des listes déroulantes

dans la macro, je veux le nom de la liste déroulante qui l'a appelée..
comment faire?

c'est dans controlformat?

merci
--
me répondre via l'adresse email protégée:
http://cerbermail.com/?4s2gdXzrwp

1 réponse

1 2
Avatar
michdenis
Bonjour Laurent,

| peux-tu m'expliquer succinctement dans quels cas on doit utiliser les
| Listbox ou combo plutôt que les listes de validation?

Les contrôles « listbox » et « combobox » qu'ils soient issus de la barre d'outils Formulaire ou Contrôle, ne font rien d'autre que
d'afficher une liste à partir de laquelle l'usager fait son choix... Selon la sélection de l'usager, un certain nombre d'événements
peuvent se produire.... (macro ou procédure événementielle)

Les listes de validation sont utilisées pour « restreindre » ce qu'un usager peut saisir dans une cellule. IL est possible de
définir toutes sortes de conditions auxquelles l'usager devra respecter pour renseigner une cellule.

L'aide d'Excel a sûrement un complément d'information sur le sujet. Sur le site de Misange : Excelabo, tu peux télécharger un
fichier exemple d'AV sur le sujet... une bonne façon d'en apprendre un peu plus et de te familiariser sur le sujet.

| j'ai fait un classeur moyennes pour les profs:... si tu as le
| temps d'y jeter un coup d'oeil pour critiquer.. !

Ceci dépasse le rôle de ce forum. Personellement, je ne fais pas ce type d'intervention dans le cadre de ce forum. Je n'ai pas
regardé ton fichier et je ne me permettrais pas de le critiquer. Chacun fait de son mieux et apprend à son rythme!


Salutations!





"Laurent" a écrit dans le message de news:
Le Sat, 27 Aug 2005 12:33:37 -0400, "michdenis"

OK SUPER ... CA MARCHE.. tout était dans le "application.caller" que
je ne connaissais pas ...

Bravo...

peux tu m'expliquer succintement dans quels cas on doit utiliser les
listbox ou combox plutot que les listes de validation ?
est ce que l'une est plus limitée que l'autre? plus gourmande en
ressources? c'est quoi la différence?
par exemple, comme ma base de données n'est pas sur la meme feuille,
il me dit que dans la liste de validation, je ne dois pas faire
référence à une autre feuille, donc je suis obligé de passer par les
listbox si je ne veux pas recopier en double une partie de ma base?


tu as l'air de bien t'y connaître en VBA apparemment.. Moi je marche
par tatonnements sans vraiment maîtriser les concepts de propriétés,
méthodes.. je les oublie aussitôt après les avoir utilisées... mais
malgré tout j'arrive à mes fins à chaque fois... j'ai fait un
classeur moyennes pour les profs:
http://membres.lycos.fr/rolfan/moyennes.html version 9.6 si tu as le
temps d'y jeter un coup d'oeil pour critiquer.. !

merci encore pour le temps passé... je garde tout ça précieusement.



Bonjour Laurent,

Si tes listbox ou combobox provient de la barre d'outils "Formulaire"

Tu peux ATTACHER cette macro à tous tes contrôles et tu vas n'avoir besoin que de une macro.

Dès que tu va cliquer sur un item de ta liste déroulante, la macro va s'exécuter

'---------------------------------------
Sub MacroGeneral()

Dim A As String, B As String
Dim C As String, D As String
Dim Sh As Shape
With Worksheets("Feuil1")
Set Sh = .Shapes(Application.Caller)
End With
With Sh
A = "Nom de la Shape : " & .Name
B = "Nom de la feuille : " & .Parent.Name
C = "Adresse de la cellule en haut à gauche : " & .TopLeftCell
D = "Adresse de la cellule en bas à droite : " & .BottomRightCell
End With
MsgBox "Information sur : " & vbCrLf & _
A & vbCrLf & B & vbCrLf & C & vbCrLf & D


'Le reste du code que tu veux faire

End Sub


--
me répondre via l'adresse email protégée:
http://cerbermail.com/?4s2gdXzrwp

1 2