Si dans une feuille vous avez une liste de données avec un filtre automatique, lorsque vous protégez la feuille, les flèches du filtre deviennent inactives. Pour en retrouver l'usage : - Dans le classeur Perso.xls ou tout autre classeur ouvert automatiquement à l'ouverture d'Excel, insérez un module.
- Tapez le code indiqué ci-dessous
- Fermez l'éditeur VBA
- dans Excel, Outils/Personnaliser, onglet Commande, catégorie Macros, glissez la commande Bouton Personnalisé sur une de vos barres d'outils
- Affectez votre procédure à ce bouton, clic-droit sur le bouton, puis Affecter une macro.
Changez éventuellement son nom et son image. - Fermer
Sub ProtectionAvecFiltre() Dim MotPasse As String Dim MenuContex As CommandBarPopup Dim MenuProtect As CommandBarControl Dim Trouve As Boolean
MotPasse = InputBox("Mot de passe :", "Protection avec usage du Filtre automatique") With ActiveSheet .Protect Password:=MotPasse, UserInterfaceOnly:=True .EnableAutoFilter = True End With Set MenuContex = CommandBars.FindControl(, 30029) For Each MenuProtect In MenuContex.CommandBar.Controls If MenuProtect.ID = 893 Then Trouve = True Exit For End If Next If Trouve Then MenuProtect.Caption = "Ôter la protection de la &feuille..." End Sub |