Bonjour,
Je me suis créé un simple script qui verrouille certaines cellules à l'ouverture de mon fichier Excel.

Quand j'ouvre le fichier une première fois, mon code s'exécute à la perfection. Mais dès que je l'ouvre une seconde fois et que je le sauvegarde à nouveau, le message suivant apparaît:
Erreur d'exécution 1004. Impossible de définir la propriété Locked de la classe Range
Voici mon code. Peut-être y trouverez-vous l'erreur que je ne réussis pas à voir...

Merci à l'avance!

Alain

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
Private Sub Workbook_open()
 
Dim y As Long
    y = 11
    For y = 11 To 895 Step 17
        Sheets("Feuil1").Range("D" & y & ":G" & y).Locked = True
    Next y
 
Dim x As Long
    x = 28
    For x = 28 To 895 Step 17
      If Cells(x, 1).Value <= Date - 2 Then
        Sheets("Feuil1").Range("D" & x - 16 & ":F" & x - 1).Locked = True
      End If
    Next x
 
Sheets("Feuil1").EnableOutlining = True
Sheets("Feuil1").Protect Password:="alain", _
    UserInterfaceOnly:=True
Sheets("Feuil2").Protect Password:="alain", _
    UserInterfaceOnly:=True
 
End Sub