Réinitialiser les menus contextuels, Excel VBA

Si les modifications apportées aux menus contextuels ne doivent être disponibles que dans un seul fichier, tous les menus contextuels concernés doivent être réinitialisés lors du passage à d’autres classeurs. L’événement Workbook_Deactivate dans le module de classe ThisWorkbook, qui exécute automatiquement le code stocké lorsqu’un autre classeur est activé, convient à cela.

Private Sub Workbook_Deactivate ()
    ' Réinitialiser tous les menus contextuels
    ReinitialiserMenusContextuels
End Sub
Public Sub ReinitialiserMenusContextuels ()
Dim cmb As CommandBar
For Each cmb In Application.CommandBars
' Vérifier si la barre de commandes est un menu contextuel
If cmb.Type = msoBarTypePopup Then
' Vérifiez si le menu contextuel est intégré
If cmb.BuiltIn = True Then
' réinitialiser le menu contextuel intégré
cmb.Reset
' Activer le menu contextuel personnalisé
cmb.Enabled = True
End If
End If
Next cmb
End Sub

 

 

S’abonner
Notifier de
1 Commentaire
le plus ancien
le plus récent le plus populaire
Inline Feedbacks
Voir tous les commentaires

Parfait.
Merci pour cette diffusion

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

1
0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x