Lorsque j'assigne des raccourcis clavier à des macros, je constate assez fréquemment que certains raccourcis s'effacent au bout d'un certain temps et je n'ai jamais compris pourquoi.
Quelqu'un sait-il ce qu'il faut faire ou ne pas faire pour conserver ses raccourcis intacts ?
Je suppose que les assignations des raccourcis clavier à vos macros ont été faites avec la démarche suivante :
menu Outils/Macro/Macros…
dans la boîte de dialogue Macro clic sur Options… puis Touche de raccourci
Si c'est bien cela alors ne plus utiliser cette méthode mais procéder par programme comme suit
1) copiez le code suivant dans un module standard
Code:
Sub aa()
MsgBox "Ctrl+B"
End Sub
Sub zz()
MsgBox "Ctrl+J"
End Sub
2) dans la fenêtre de code de ThisWorkbook, copiez le code suivant
Code:
Private Sub Workbook_Activate()
Application.OnKey "^b", "aa"
Application.OnKey "^j", "zz"
End Sub
Private Sub Workbook_Deactivate()
Application.OnKey "^b", ""
Application.OnKey "^j", ""
End Sub
Chaque fois que le classeur sera activé les macros "aa" et "zz" pourront être lancées par les raccourcis
respectifs Ctrl+B et Ctrl+J.
Les raccourcis seront inopérants chaque fois que le classeur sera désactivé.
Effectivement, la seule façon que je connaissais, c'était par le menu d'Excel.
J'ai adapté votre code à mes fichiers. J'ai ouvert simultanément 3 fichiers comportant chacun les mêmes macros avec les mêmes raccourcis clavier. Je suis passé de l'un à l'autre en testant les raccourcis et tout a fonctionné parfaitement.