Sub ProtegerFeuille(wsAProteger As Worksheet, objTypeSelection As XlEnableSelection, strMotDePasse As String, _
Optional bolObjetsDessin As Boolean, Optional bolContenu As Boolean, Optional bolUserInterfaceOnly As Boolean, _
Optional bolAutoriserCellulesMiseEnForme As Boolean, Optional bolAutoriserColonnesMiseEnForme As Boolean, Optional bolAutoriserLignesMiseEnForme As Boolean, _
Optional bolAutoriserInsertionColonnes As Boolean, Optional bolAutoriserInsertionLignes As Boolean, Optional bolAutoriserInsertionLiensHypertexte As Boolean, _
Optional bolAutoriserSuppressionColonnes As Boolean, Optional bolAutoriserSuppressionLignes As Boolean, _
Optional bolAutoriserTri As Boolean, Optional bolAutoriserFiltrage As Boolean, Optional bolAutoriserTableauxCroisésDynamiques As Boolean)
'
' PROTEGER FEUILLE
'
' wsAProteger [WORKBOOK] = Feuille à protéger
' objTypeSelection [LIST] = xlNoSelection empêche toute sélection dans la feuille
' xlUnlockedCells ne permet que la sélection des cellules dont la propriété Locked est False
' xlNoRestrictions permet la sélection de n'importe quelle cellule
' strMotDePasse [STRING] = Mot de passe de la feuille
' bolObjetsDessin [BOOLEAN] = Protéger les formes.
' bolContenu [BOOLEAN] = Protéger le contenu. Protetction du graphique entier, Protetction des cellules verrouillées.
' bolUserInterfaceOnly [BOOLEAN] = Protéger l'interface utilisateur, mais pas les macros. Si cet argument est omis, la protection s'applique à la fois aux macros et à l'interface utilisateur' bolAutoriserCellulesMiseEnForme [BOOLEAN] = Permet à l'utilisateur de mettre en forme n'importe quelle cellule.
' bolAutoriserColonnesMiseEnForme [BOOLEAN] = Permet à l'utilisateur de mettre en forme n'importe quelle colonne.
' bolAutoriserLignesMiseEnForme [BOOLEAN] = Permet à l'utilisateur de mettre en forme n'importe quelle ligne.
' bolAutoriserInsertionColonnes [BOOLEAN] = Permet à l'utilisateur d'insérer des colonnes.
' bolAutoriserInsertionLignes [BOOLEAN] = Permet à l'utilisateur d'insérer des lignes.
' bolAutoriserInsertionLiensHypertexte [BOOLEAN] = Permet à l'utilisateur d'insérer des liens hypertexte.
' bolAutoriserSuppressionColonnes [BOOLEAN] = Permet à l'utilisateur de supprimer des colonnes.
' bolAutoriserSuppressionLignes [BOOLEAN] = Permet à l'utilisateur de supprimer des lignes.
' bolAutoriserTri [BOOLEAN] = Permet à l'utilisateur d'effectuer un tri. Toutes les cellules de la plage à trier doivent être déverrouillées ou ne plus être protégées.
' bolAutoriserFiltrage [BOOLEAN] = Permet à l'utilisateur de définir des filtres. Les utilisateurs peuvent changer des critères de filtre, mais ils ne peuvent ni activer, ni désactiver un filtre automatique.
' bolAutoriserTableauxCroisésDynamiques [BOOLEAN] = Permet à l'utilisateur d'utiliser des rapports de tableau croisé dynamique dans la feuille de calcul protégée.
'
' RETOUR : [--],
'
wsAProteger.EnableSelection = objTypeSelection
wsAProteger.Protect Password:=strMotDePasse, _
DrawingObjects:=bolObjetsDessin, _
Contents:=bolContenu, _
UserInterfaceOnly:=bolUserInterfaceOnly, _
AllowFormattingCells:=bolAutoriserCellulesMiseEnForme, _
AllowFormattingColumns:=bolAutoriserColonnesMiseEnForme, _
AllowFormattingRows:=bolAutoriserLignesMiseEnForme, _
AllowInsertingColumns:=bolAutoriserInsertionColonnes, _
AllowInsertingRows:=bolAutoriserInsertionLignes, _
AllowInsertingHyperlinks:=bolAutoriserInsertionLiensHypertexte, _
AllowDeletingColumns:=bolAutoriserSuppressionColonnes, _
AllowDeletingRows:=bolAutoriserSuppressionLignes, _
AllowSorting:=bolAutoriserTri, _
AllowFiltering:=bolAutoriserFiltrage, _
AllowUsingPivotTables:=bolAutoriserTableauxCroisésDynamiques
End Sub