Bonjour,
J'ai fait une ligne de code afin de changer de couleur les collaborateurs présents ou non dans un fichier excel.
Je ne veux pas que les utilisateurs utilisant cette feuille puisse toucher autre chose que le changement de couleur par double clic de la cellule, du coup je protège le fichier.
Les noms de collaborateurs sont dans la colonne "C" et des responsables "I". En début de liste de la colonne "C" se trouve aussi le responsable de la semaine (Qui est forcement aussi dans la colonne "I"). Le bute est qu'en cas de double clique sur le nom d'un responsable, il change de couleur autant dans la colonne "I" qu'en entête de la "C".
Le changement de couleur fonctionne bien, mais du moment que l'on double clique sur le responsable de la semaine, le fichier se retrouve déverrouillé...
J'ai regardé en pas à pas, le pourquoi du comment, et le code se stoppe du moment qu'il arrive sur la ligne 11. Du coup, il ne va pas jusqu'au re-verrouillage de la feuille...
Je ne comprends pas pourquoi, est ce que vous pourriez m'aider ?
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 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cancel = True If Not Intersect(Target, [C12,C14,C16,C18,C20,C22:C23,C27:C32,I3:I10]) Is Nothing Then FPresence.Unprotect ("XXXXX") If Target.Count > 1 Then Exit Sub If Target.Offset(0, 1) = "" Then Exit Sub Target.Font.ColorIndex = IIf(Target.Font.ColorIndex = 3, 4, 3) If Target.Column = 9 And Target.Row >= 3 And Target.Row <= 10 Then If Cells(3, 4).Text = Cells(Target.Row, 10).Text Then Cells(3, 3).Font.ColorIndex = Cells(Target.Row, 9).Font.ColorIndex End If End If FPresence.Protect ("XXXXX") End If End Sub
Partager