1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim N As Integer, Couleur As Integer, Indice As Integer
Dim X As String
Dim Tb, TbCoul
Application.ScreenUpdating = False 'Rafraichissement écran
If Not Intersect(Range("F10:F86"), Target) Is Nothing Then
TbCoul = Array(0, 15, 17)
Tb = Array("", "PLAQUES", "OSTHÉOPATHIE")
Cancel = True
If Not Intersect(Range("G10:G86"), Target) Is Nothing Then
TbCoul = Array(0, 3, 3, 3, 3)
Tb = Array("", "PAIEMENT 5 SÉANCES", "PAIEMENT 6 SÉANCES", "PAIEMENT 7 SÉANCES", "PAIEMENT 12 SÉANCES")
Cancel = True
End If
'Mettre en Adéquation dans la MFC le NOMBRE de CARACTÈRES du mot PAIEMENT(Pour cet Exemple 8).On peut aussi écrire paiement en Minuscules dans la MFC: =GAUCHE(F10;8)="paiement"
X = UCase(Trim(Target))
If UBound(Filter(Tb, X)) >= 0 Then
Indice = Application.Match(X, Tb, 0) Mod (1 + UBound(Tb))
Target = Tb(Indice)
Couleur = TbCoul(Indice)
If Couleur = 0 Then
If Target.Column = 6 Then
Couleur = Target.Offset(0, -1).Interior.ColorIndex
Else
Couleur = Target.Offset(0, -2).Interior.ColorIndex
End If
End If
ActiveSheet.Unprotect
Target.Interior.ColorIndex = Couleur
ActiveSheet.Protect
Else
Target = ""
End If
End If
End Sub |
Partager