Menu

Autoriser les filtres apres protection feuilles

Messages postés
4
Date d'inscription
dimanche 16 septembre 2018
Dernière intervention
15 novembre 2018
- 9 nov. 2018 à 13:50 - Dernière réponse :
Messages postés
16527
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
16 novembre 2018
- 9 nov. 2018 à 14:13
Bonjour Chers tous

La macro ci après sert à protéger les formules dans les feuilles de mon classeur
Le problème qui semble se poser est que les filtres automatiques sont impossibles après protection
Comment faire ? Merci

sub protect()
Dim sh As Worksheet

Application.ScreenUpdating = False

For Each sh In ThisWorkbook.Worksheets
With sh
.Visible = xlSheetVisible
.Unprotect Password:="mdp"
.EnableAutoFilter = True
.EnableOutlining = True
.Cells.Locked = False
On Error Resume Next
.Cells.SpecialCells(xlCellTypeFormulas, 23).Locked = True
On Error GoTo 0
.Protect Password:="mdp", _
AllowFormattingCells:=True, _
AllowFormattingColumns:=True, _
AllowFormattingRows:=True, _
AllowInsertingColumns:=True, _
AllowInsertingRows:=True, _
AllowInsertingHyperlinks:=True, _
AllowDeletingColumns:=True, _
AllowDeletingRows:=True, _
AllowSorting:=True, _
AllowFiltering:=True, _
AllowUsingPivotTables:=True, _
UserInterfaceOnly:=True
If .Name <> "Menu" Then
.Visible = xlSheetHidden
End If
End With
Next sh

End Sub
Afficher la suite 

Votre réponse

1 réponse

Messages postés
16527
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
16 novembre 2018
- Modifié par Mike-31 le 9/11/2018 à 14:16
0
Merci
Bonjour,

le code lors de la protection sous VBA est
AllowFiltering:=True

si tu n'as qu'une feuille à traiter, à l'ouverture tu identifie ta feuille et tu saisis la ligne de code

Private Sub Workbook_Open()
Sheets("Feuil 1").Protect Password:="ton mot de passe"
Sheets("Feuil 1").AllowFiltering:=True

et si tu as plusieurs onglets tu fais une boucle du genre
Dim Wb As Worksheet
For Each Wb In Sheets
Wb.Protect Password:="open", DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFiltering:=True
Next Wb
A+
Mike-31

Je suis responsable de ce que je dis, pas de ce que tu comprends...
Commenter la réponse de Mike-31