Autres (RESOLU) Restaurer la couleur d'origine

chaelie2015

XLDnaute Accro
Bonjour Forum
ce code détecte si une cellule dans la colonne B (à partir de la ligne B3) est en double avec une autre cellule dans la même colonne. Si une redondance est détectée, un message d'erreur s'affiche indiquant la ligne où la redondance a été trouvée. De plus, la cellule existante avec la redondance est colorée en rouge. Ainsi, lorsque vous changez une cellule dans la colonne B pour qu'elle devienne une redondance, la cellule existante correspondante est mise en évidence en rouge.
Je souhaite compléter ce code de manière à restaurer la couleur d'origine de la cellule existante, qui avait été colorée en rouge, dès que je supprime la cellule redondante.
Merci
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim rng As Range
    Dim cell As Range
    Dim checkRange As Range
    Dim duplicateCell As Range
    Dim found As Boolean
    Dim originalColor As Long
    
    ' Spécifiez la plage de vérification (à partir de B3)
    Set checkRange = Me.Range("B3:B" & Me.Cells(Me.Rows.Count, "B").End(xlUp).Row)
    Set duplicateCell = Nothing
    found = False
    
    ' Si la cellule modifiée se trouve dans la plage de vérification
    If Not Intersect(Target, checkRange) Is Nothing Then
        For Each cell In checkRange
            If cell.Value = Target.Value And cell.Address <> Target.Address Then
                Set duplicateCell = cell
                found = True
                Exit For
            End If
        Next cell
        If found Then
            MsgBox "Cette donnée est déjà inscrite dans la colonne B à la ligne " & duplicateCell.Row & ".", vbExclamation, "Redondance détectée"
            originalColor = duplicateCell.Interior.Color ' Mémoriser la couleur initiale
            
            ' Colorer la cellule existante en rouge
            duplicateCell.Interior.Color = RGB(255, 0, 0)
        End If
    End If
End Sub
 

Pièces jointes

  • Charlie HM Réstaurer la couleur.xlsm
    18.1 KB · Affichages: 4

Discussions similaires

Statistiques des forums

Discussions
313 260
Messages
2 096 636
Membres
106 694
dernier inscrit
hussor.t