Protection cellules

bonjour

j'ai voulu proteger plusieurs pages sauf certaines cellules qui doivent etre deverrouillées pour pouvoir rentre des données

quand je veux faire une remise a zero de l'ensemble il me plante

je vous joint le fichier qui sera plus explicite

https://www.excel-pratique.com/~files/doc/calendrier_polobis.zip

merci de vos réponses

Bonjour,

Pour protéger tes cellules, sélectionne sur chaque feuille les cellules à protéger puis vas dans menu/format/cellule et sous l'onglet Protection" décoche la case "verrouillé"

Ensuite retourne sur ta feuille, vas dans menu/outils/protection et protège la en veillant à décocher la case "objet" si tu as des boutons sur cette feuille.

Ensuite essaye cette macro

Sub VIDER()
Dim sh As Worksheet
For Each sh In Worksheets
With ActiveSheet
.Unprotect
Union(Range("E26:E27,G26:M27,G39,C6:C7,E6:E7,G6:G7,I6:I7,K6 _
K7,M6:M7,C10:C11,E10:E11,G10:G11,I10:I11,K10:K11,M10:M11, _
C14:C15,E14:E15,G14:G15,I14:I15,K14:K15,M14:M15,C18:C19, _
E18:E19,G18:G19,I18:I19,K18:K19,M18:M19,C22:C23,E22:E23, _
G22:G23,I22:I23,K22:K23"), _
Range("M22:M23,C26:C27")).ClearContents
.Protect
End With
Next sh
End Sub

Amicalement

Dan

dedemimi a écrit :

bonjour

j'ai voulu proteger plusieurs pages sauf certaines cellules qui doivent etre deverrouillées pour pouvoir rentre des données

quand je veux faire une remise a zero de l'ensemble il me plante

je vous joint le fichier qui sera plus explicite

https://www.excel-pratique.com/~files/doc/calendrier_polobis.zip

merci de vos réponses

Salut

comme tu ne simplifies pas la tâche avec des noms de mois inconnus d'Excel, j'ai supprimé les feuilles qui ne sont ni une feuille de mois, ni la feuille recap. il en résulte 2 macro : une de protection, une de vidage :

Sub Verr()
Dim F As Worksheet
Dim Cel As Range

For Each F In Sheets
    If Not (F.Name Like "RE*") Then
        F.Unprotect
        F.UsedRange.Cells.Locked = True
        For Each Cel In F.UsedRange
            If Cel = "KALLEE" Or Cel = "CETA" Then Cel.Offset(0, 1).Locked = False
        Next Cel
        F.Protect
    End If
Next F
End Sub

Sub Vid()
Dim F As Worksheet
Dim Cel As Range

For Each F In Sheets
    If Not (F.Name Like "RE*") Then
        For Each Cel In F.UsedRange
            If Cel = "KALLEE" Or Cel = "CETA" Then Cel.Offset(0, 1).ClearContents
        Next Cel
    End If
Next F
End Sub

La première verrouille toutes les cellules, puis déverrouille celles à droite de celles contenant KALLEE ou CETA avec une déprotection en début, puis une protection de la feuille avant de passer à la suivante

La seconde efface le contenu des cellules à droite de celles contenant KALLEE ou CETA, sur toutes les feuilles.

A+

Rechercher des sujets similaires à "protection"