Todd a développé un classeur utilisé par d’autres. Pour éviter que les données ne soient détruites, il a protégé la feuille de calcul ainsi que le classeur. Le problème est que Todd oublie parfois de protéger la feuille de calcul et le classeur après avoir apporté des modifications. Il se demande s’il existe un moyen de créer un indicateur visuel qui montre si la feuille de calcul / classeur est actuellement protégée ou non protégée.

Bien sûr, le moyen le plus simple de vérifier si quelque chose n’est pas protégé est de commencer à regarder les choix de menu disponibles. Si la gamme complète de choix est là, la feuille de calcul et le classeur ne sont pas protégés. S’il y a des parties importantes qui ne sont pas disponibles («grisées»), la protection est activée.

Une autre solution simple consiste à créer une fonction définie par l’utilisateur qui renvoie une valeur indiquant si le classeur ou la feuille de calcul sont protégés. Ce qui suit fera l’affaire:

Function WksProtected(rng As Range) As String     Application.Volatile     If rng.Parent.ProtectContents Then         WksProtected = "Protected"

Else         WksProtected = "Not Protected"

End If End Function
Function WkbProtected(rng As Range) As String     Application.Volatile     If rng.Parent.Parent.ProtectStructure Then         WkbProtected = "Protected"

Else         WkbProtected = "Not Protected"

End If End Function

Pour utiliser les macros, incluez simplement des formules comme les suivantes n’importe où dans la feuille de calcul:

=WksProtected(A1)

=WkbProtected(A1)

Le résultat des formules est « Protégé » ou « Non protégé »,

en fonction de l’état des feuilles de calcul et du classeur. Vous pouvez utiliser la mise en forme conditionnelle pour mettre en évidence les cellules en fonction de ce qui est renvoyé par les fonctions.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (3172) s’applique à Microsoft Excel 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban d’Excel (Excel 2007 et versions ultérieures) ici:

link: / excelribbon-Visually_Showing_a_Protection_Status [Affichage visuel d’un état de protection].