Ne pas exécuter le code si la couleur de police est grise

isa44

XLDnaute Occasionnel
Bonsoir , comment faire pour ne pas exécuter le code si la couleur de police est grise à 50% de la cellule d'à coté (-1) et si cette cellule (-1) est vide ?

le code en question :

Code:
Dim Intérieur As Integer, Couleur As Long, Référence As Integer, i As Integer

If Target.Count > 1 Then Exit Sub

If Not Application.Intersect(Target, Range("C6:C27,H6:H41,M6:M37,R6:R39")) Is Nothing Then

    Référence = Target
   
    With Sheets("PARC")
        For i = 7 To .Range("C65000").End(xlUp).Row
            If .Cells(i, 3) = Référence Then
                GoTo Etiquette
            End If
           
        Next
Etiquette:
    Intérieur = .Cells(i, 3).Interior.Pattern
    Couleur = .Cells(i, 3).Interior.Color
    End With
    Target.Interior.Pattern = Intérieur
    Target.Interior.Color = Couleur
End If
 

Roland_M

XLDnaute Barbatruc
Re : Ne pas exécuter le code si la couleur de police est grise

bonsoir,

( si cette cellule (-1) est vide ?)
-1 de la colonne ou de la ligne ?

'si c'est la colonne c'est Target.Offset(0,-1)
If Target.Offset(0, -1).Font.ColorIndex = 16 And Target.Offset(0, -1) = "" Then Exit Sub ' (16=gris 50%)

'si c'est la ligne c'est Target.Offset(-1,0)
If Target.Offset(-1,0).Font.ColorIndex = 16 And Target.Offset(-1,0) = "" Then Exit Sub
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
314 017
Messages
2 104 583
Membres
109 084
dernier inscrit
mizab