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

VBA : Action sur click droit de la sourie sur une cellule donnée

1 réponse
Avatar
raphael-diaz
Bonjour,
J'aimerais savoir comment faire pour créer en VBA une action sur click droit de la sourie sur une cellule précise d’une feuille Excel.

Avant j'utilisais le code VBA directement dans la feuille du classeur :
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Call CreateVersionListOnBeforeRightClickEvent(Target)
End Sub

Cependant j'aimerais obtenir un code générique et non pas propre à une feuille.
Ce code devra donc être:
Si on es dans le classeur "MonClasseur" dans l'onglet "MonOnglet" et sur telle cellule, et si l'utilisateur fait un click droit, alors exécuter la macro CreateVersionListOnBeforeRightClickEvent(Target)
Pour l'instant j'ai essayé d'utiliser MouseDown sans succès. :

For Each w In Workbooks
If IsTheWorkBook("MonClasseur, w.Name) Then 'dans tel classeur
If ActiveSheetIs("MonOnglet") And MouseDown() Then 'dans tel onglet si on click droit
Call CreateVersionListOnBeforeRightClickEvent(Target)
End If
Next w


Merci d'avance pour votre aide.
Sincérement

1 réponse

Avatar
isabelle
bonjour Raphael,

utilise un l'événement de ThisWorbook "Workbook_SheetBeforeRightClick"
au lieu d'un événement de feuille,

Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal
Target As Range, Cancel As Boolean)

isabelle



Le 2011-02-02 04:22, raphael-diaz a écrit :
Bonjour,
J'aimerais savoir comment faire pour créer en VBA une action sur click droit de
la sourie sur une cellule précise d’une feuille Excel.

Avant j'utilisais le code VBA directement dans la feuille du classeur :
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As
Boolean)
Call CreateVersionListOnBeforeRightClickEvent(Target)
End Sub

Cependant j'aimerais obtenir un code générique et non pas propre à une feuille.

Ce code devra donc être:
Si on es dans le classeur "MonClasseur" dans l'onglet "MonOnglet" et sur telle
cellule, et si l'utilisateur fait un click droit, alors exécuter la macro
CreateVersionListOnBeforeRightClickEvent(Target)
Pour l'instant j'ai essayé d'utiliser MouseDown sans succès. :

For Each w In Workbooks
If IsTheWorkBook("MonClasseur, w.Name) Then 'dans tel classeur
If ActiveSheetIs("MonOnglet") And MouseDown() Then 'dans tel onglet
si on click droit
Call CreateVersionListOnBeforeRightClickEvent(Target)
End If
Next w


Merci d'avance pour votre aide.
Sincérement