Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…