Menu contextuel : optimisation de code (identification de la commande appelante)

ED31

XLDnaute Junior
Bonjour,

A partir du tutoriel de Microsoft sur les menus contextuels, j'ai ajouté au menu contextuel, accessible depuis une sélection de cellule via le click droit de la souris, trois commandes personnelles : chacune d'elles permet de sélectionner un élément dans une liste (texte) qui est inséré dans la sélection. Les commandent sont "Action 1" Action 2 .... et insérent "Projet 1", "Projet 2";)

Les trois commandes appellent trois macro identiques qui ne différent que par le texte à insérer.
Le projet prévoit de proposer de sélectionner une commande parmi une dizaine proposées (choix dans une liste de dix valeurs)
Il serait souhaitable de n'utiliser qu'une seule macro en passant un paramètre en fonction de la commande sélectionnée par l'utilisateur (rang dans le menu ou autre...). Ce paramètre permettrait de lire la valeur à insérer dans la cellule dans une table.
Je ne vois pas comment procéder. Je ne sais pas si on peut mettre une interception sur chaque commande qui, si sélectionnée, stockerait l'évênement dans une variable pour pouvoir l'utiliser ensuite.
Ci-joint l'état du projet.
Merci pour vos conseils avisés. :rolleyes:
 

Pièces jointes

  • Choix ds liste via menu contextuel.xlsm
    37 KB · Affichages: 27

Dranreb

XLDnaute Barbatruc
Re : Menu contextuel : optimisation de code (identification de la commande appelante)

Bonsoir.
Une piste à creuser: Application.Caller(1)
C'est un tableau dans ce cas de figure, dont les éléments 1 et 2 semblent renvoyer le numéro d'ordre du sous menu qui a invoqué la macro.
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa