XL 2010 créer une alerte si la feuille n'est pas protégée

  • Initiateur de la discussion Initiateur de la discussion chajmi
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

chajmi

XLDnaute Occasionnel
Bonjour à tous,

Je travaille sur un fichier pour le travail, sur lequel interviennent d'autres personnes.
Mon fichier est bien entendu protégé par mot de passe.
En fonction des modifications que je fais sur ce fichier, je passe régulièrement du mode "protégé" à "déprotégé".

Il m'est arrivé plusieurs fois d'oublier de remettre la protection et je souhaiterais optimiser mon système :
1/ Je voudrais que toutes les feuilles soit protégées à chaque fermeture du classeur (ça ce serait vraiment super)
2/ Avoir un message visuel dans une cellule, indiquant en permanence l'état de la feuille : Protégée ou Déprotégée

Est ce que quelqu'un se sent de me concocter ça, parce que moi je ne me suis pas à la hauteur.

Merci d'avance à ceux qui se pencheront sur mon sujet.
salutations
 
Assez fier de moi, Pour le petit 1, j'ai essayé ceci et ça fonctionne :

Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'-------------------------------------------------------------
' Proteger toutes les feuilles d'un classeur
Dim nombre As Integer
nombre = ActiveWorkbook.Sheets.Count
Application.ScreenUpdating = False
For i = 1 To nombre
    Worksheets(i).Protect Password:="xxx"
Next i
'Proteger le classeur
ActiveWorkbook.Protect "xxx", True, True
'-------------------------------------------------------------
End Sub

Merci d'étudier mon petit 2
 
Assez fier de moi, Pour le petit 1, j'ai essayé ceci et ça fonctionne :

Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'-------------------------------------------------------------
' Proteger toutes les feuilles d'un classeur
Dim nombre As Integer
nombre = ActiveWorkbook.Sheets.Count
Application.ScreenUpdating = False
For i = 1 To nombre
    Worksheets(i).Protect Password:="xxx"
Next i
'Proteger le classeur
ActiveWorkbook.Protect "xxx", True, True
'-------------------------------------------------------------
End Sub

Merci d'étudier mon petit 2

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveSheet.ProtectContents = True Then
Range("A1") = "Protégée"
Else
Range("A1") = "Déprotégée"
End If
End Sub

Il faut penser à retirer la protection de la cellule A1 de chaque feuille concernée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour