C
carlos
Guest
Bonjour
Cette macro me compare deux plages et attribue une couleur en fonction de la valeur renvoyée par la cellule cellres.offset(12,0) de la plage .
Sub foreachcolor()
Dim cellres As Variant, celltab As Variant
Dim poule As Byte, NbreDePoules As Byte
For Each cellres In Range('ResutHorPoule1')
For Each celltab In Range('nomP1')
If celltab = cellres Then
Select Case cellres.Offset(12, 0).Value
Case 1
celltab.Interior.ColorIndex = 3
Case 2
celltab.Interior.ColorIndex = 46
Case 3
celltab.Interior.ColorIndex = 6
Case 4
celltab.Interior.ColorIndex = 4
Case 5
celltab.Interior.ColorIndex = 23
End Select
End If
Next
Next
End Sub
le probleme est que ma plage nomP1(nom avec doublons) contient plusieurs fois la valeur comparée avec la plage ResutHorPoule1(sans doublon).
J'aimerais que si une personne à déja eu une couleur alors qu'il passe à la suivante pour ne pas avoir par exemple 2 toto en rouge .
Merci
Cette macro me compare deux plages et attribue une couleur en fonction de la valeur renvoyée par la cellule cellres.offset(12,0) de la plage .
Sub foreachcolor()
Dim cellres As Variant, celltab As Variant
Dim poule As Byte, NbreDePoules As Byte
For Each cellres In Range('ResutHorPoule1')
For Each celltab In Range('nomP1')
If celltab = cellres Then
Select Case cellres.Offset(12, 0).Value
Case 1
celltab.Interior.ColorIndex = 3
Case 2
celltab.Interior.ColorIndex = 46
Case 3
celltab.Interior.ColorIndex = 6
Case 4
celltab.Interior.ColorIndex = 4
Case 5
celltab.Interior.ColorIndex = 23
End Select
End If
Next
Next
End Sub
le probleme est que ma plage nomP1(nom avec doublons) contient plusieurs fois la valeur comparée avec la plage ResutHorPoule1(sans doublon).
J'aimerais que si une personne à déja eu une couleur alors qu'il passe à la suivante pour ne pas avoir par exemple 2 toto en rouge .
Merci