Microsoft 365 raccourcis clavier

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

GuiDUG

XLDnaute Nouveau
Bonjour

J'ai créé des raccourcis clavier qui me permettent de lancer des macros.

Je voudrais que ces raccourcis clavier ne soient fonctionnels que pour le fichier qui contient les macros associées.

Actuellement, si j'ai un autre fichier EXCEL ouvert et que l'on utilise un des raccourci clavier, il lance la macro associée...ce que je ne veux pas.

Y'a t-il une fonction ou un paramétrage à faire pour résoudre ce problème ?
 
Solution
Re,

Ces macros événementielles se placent dans le module thisworkbook.
Sans titre.png

Dans l'exemple joint, le raccourci Ctrl i lance la macro bonjour quand tu es sur le classeur contenant les macros, les autres classeurs, quand ils sont actifs, gardent le raccourci Ctrl i standard qui passe la cellule en italique.

Bien cordialement, @+
Bonsoir Guy,
Sans fichier difficile de bien comprendre.
Avez vous "déprogrammer" les touches avant de sortir de votre fichier initial ?
Par ex une macro qui programme Ctrl+Alt+j :
VB:
Sub ProgrammeTouche()
  Application.OnKey "^%j", "test"
End Sub
Sub DéprogrammeTouche()
  Application.OnKey "^%j"
End Sub
Sub test()
  MsgBox "Appui sur Ctrl + Alt + J"
End Sub
ProgrammeTouche redirige la combinaison Ctrl+Alt+j vers la macro Test
DéprogrammeTouche rétablit les fonctions initiales des touches.
 
Bonjour GuiDUG, sylvanu, le forum

GuiDUG, utilise les événementielles du Workbook pour activer/désactiver tes raccourcis.

Bien cordialement, @+
VB:
Private Sub Workbook_Activate()

End Sub

Private Sub Workbook_Deactivate()

End Sub
 
Bonjour

J'ai mal exprimé mon problème.
J'ai un 1er fichier qui contient des macros activées par des raccourcis clavier.
S'il y'a un second fichier ouvert en même temps :
-si mon 1er fichier est celui qui est actif, mes raccourcis clavier fonctionnent et activent le macros associées, c'est le but recherché.
-par contre si c'est le second fichier qui est actif, et que j'utilise un des raccourcis clavier du 1er fichier, cela va lancer les macros du 1er fichier..dans le second fichier....Ce qui n'est pas l'effet voulu.

Finalement, j'ai rajouté le code ci-dessous qui résoud mon problème

VB:
If ActiveWorkbook.Name <> ThisWorkbook.Name Then
End
End If

Merci pour votre réactivité

Problème résolu
 
Bonjour le fil, le forum

@GuiDUG , oui cela fonctionne aussi, mais je trouve la solution des événementielles (que j'ai évoquée en post 3) plus adaptée et plus pérenne car elle a l'avantage, en cas de diffusion du fichier, de restaurer tous les raccourcis standard (et il y en a légion, on ne peut savoir quels sont ceux utilisés habituellement par un utilisateur lambda) pour le classeur actif si certains sont modifiés par le classeur contenant les raccourcis modifiés.

Bien cordialement, @+
 
J'ai recopié ton code.
Quand je bascule du 1er fichier au 2em, j'ai bien le 'Workbook_Deactivate' qui se lance.
Quand je bascule du 2em fichier au 1er, j'ai bien le 'Workbook_Activate' qui se lance.
Mais dans tous les cas mes raccourcis claviers restent actifs, et les macros se lancent encore de mon 2em fichier.
 
Re,

Ces macros événementielles se placent dans le module thisworkbook.
Sans titre.png

Dans l'exemple joint, le raccourci Ctrl i lance la macro bonjour quand tu es sur le classeur contenant les macros, les autres classeurs, quand ils sont actifs, gardent le raccourci Ctrl i standard qui passe la cellule en italique.

Bien cordialement, @+
 

Pièces jointes

J'ai fait les tests, ça fonctionne.

La solution en poste 4 marche très bien.

La solution de Yeahou fonctionne aussi..et je la trouve effectivement mieux car elle permet de désactiver les raccourcis en dehors du fichier concerné et de rendre actif les raccourcis sur les autres fichiers.
En plus cette solution permet de coder les raccourcis via les macros, et non en attribuant les raccourcis via les options des macros.
Je conseil donc la solution de Yeahou.

Merci Yeahou
 
Re,

Ah d'accord, je n'avais pas compris que tu affectais manuellement tes raccourcis et j'ai supposé, tout à fait arbitrairement d'ailleurs, que tu maitrisais déjà la méthode Onkey. Sinon je t'aurai proposé un code plus complet dès le début.

Bonne journée !
Bien cordialement, @+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
347
  • Question Question
Microsoft 365 Power Query
Réponses
8
Affichages
137
Retour