Xlam Click Droit

Bonjour à tous.

Je suis nouveau sur ce site, et je vous prie de m'excuser, si je fais des erreurs de communication

Je développe un utilitaire en .XLAM, pour plusieurs personnes

Je ne trouve pas comment mettre dans mon fichier .XLAM, une procédure pour gérer les Click droit.

Mon but est

Si mes utilisateurs sont sur une feuille spéciale, je remplace le menu Click droit standard par un Click droit à moi.

Comme mes utilisateurs créent eux mêmes les feuilles/Classeurs, je ne peux pas le mettre dans leurs fichiers.

Merci

Bonjour,

J'ai auparavant essayé de traficoter des codes en ajoutant des menu d'options "au clic droit" mais cela s'est avéré être plus galère qu'autre chose (entre autre car ces options ne s'affichaient pas si l'utilisateurs se trouvais dans un tableau)

Je te conseil plutôt de passer par l'installation d'une barre d'outils personnalisée via l'onglet "Complément".

Les boutons attachés à cette barre seront alors accessible de n'importe ou.

Dans ton cas, tu n'aura qu'a bloquer leurs actions sii l'utilisateur ne se trouve pas sur la bonne feuille.

Au plaisir de te lire,

Malow

bonsoir,

Mettre le texte de ta macro "Clic Droit" SVP.

Tu en fais quoi,de ton xlam ? Il est enregistré comme classeur de macro complémentaire et coché comme complément, ou simplement référencé dans XLSTART ou dans ton répertoire de travail ?

A+


[EDIT] En gros l'idée c'est de mettre cette macro dans le ThisWorkbook de ton xlam :

Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
If Sh.Name = "blabla" Then
Cancel = True ' ???
   TaMacroAExécuter 'Attention à bien délimiter la plage cible avec Intersect
End If
End Sub

ou mieux au lieu d'utiliser le Sh.Name, utiliser le CodeName...

A+

Bonjour

Merci a vous pour votre aide.

Galopin

Mon xlam est mis en xlstart.

Cela change t il quelque chose qu'il soit mis en macro complémentaire et coché complément ?

L'usage de Private Sub Workbook_SheetBeforeRightClick fonctionne seulement si c'est mis dans mon classeur actif.

Mais comme je dois écrire cela dans le .Xlam, il ne l’exécute pas.

Malow

En fait j'ai déjà mis aussi les différentes procédures dans le ruban, mais je voulais améliorer en plaçant 3 ou 4> commande dans le menu click droit.

Bonne soirée

bonsoir,

C'était juste une idée en l'air...

Je demandais ça pour tester dans des conditions aussi réelles que possible. Mais il est vrai que ça ne marche pas dans le .xlam macro complémentaire, donc il n'y a pas de raison que ça marche ailleurs.

Bon : C'est donc une hypothèse de fermée !

Du coup, ça ne laisse plus beaucoup de possibilités...

A+

Bonjour,

je t'ai fait un classeur avec les événements Application.

Pour les avoir sur ton classeur met dans Thisworkbook :

Private WithEvents App As Application

Private Sub Workbook_Open()
    'récupérer l'application Excel à l'ouverture
    Set App = Application
End Sub

Enregistrer, fermer et rouvrir le classeur pour qu'ils soient disponibles.

Si tu ajoutes une gestion d'événement Application il faut souvent refaire cette manip.

On peut récupérer le classeur origine du double-clic, j'ai mis un exemple. Reste à voir comment ça se comporte en xlam...

eric

PS : avant de lancer contrôle que tu maitrises bien les activations/désactivation des feuilles ou des classeur de la même manière car il faudra mettre à jour les menus contextuels à chaque événement. Sans oublier de les supprimer également à la fermeture d'un classeur s'il est actif. A mon avis ça va être sportif...

Bonjour,

Pour moi c'est impeccable en macro complémentaire.

Et ce n'est pas trop instable j'ai même essayé de provoquer plusieurs erreurs avec/sans débogage, problème de compilation : je n'ai pas de volatilité !

A+

Bonjour Galopin01.

Merci pour cette liste, je vais la passer en revue. et les intégrer dans les macros

Bonne journée

de rien...

Rechercher des sujets similaires à "xlam click droit"