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

XL 2016 donne valeur en fonction d'une couleur

tinet

XLDnaute Impliqué
Bonjour le forum,

Je cherche un code à adapté

Voici ma demande, sur ma feuille dans la colonne G ( Il y a environ 800 lignes traitées)


en fonction de la couleur de la cellule trouvée, rajouter une valeur dans la même cellule

Il y a quatre couleurs donc valeur de 1 à 4

Merci pour vos idées
 

vgendron

XLDnaute Barbatruc
Hello

En supposant que la zone contenant les couleurs possibles s'appelle "ListeCouleurs"
VB:
Sub CouleurToInt()
Application.ScreenUpdating = False
Set tabloCoul = CreateObject("Scripting.dictionary")

With ActiveSheet
    Nbcoul = .Range("A" & .Rows.Count).End(xlUp).Row
'    For i = 1 To Nbcoul
'        If Not tabloCoul.exists(.Range("A" & i + 1).Interior.Color) Then
'            tabloCoul.Add .Range("A" & i + 1).Interior.Color, .Range("A" & i + 1)
'        End If
'    Next i
   
    For Each cel In .Range("ListeCouleurs")
        If Not tabloCoul.exists(cel.Interior.Color) Then
            tabloCoul.Add cel.Interior.Color, cel
        End If
    Next cel

    fin = .UsedRange.Rows.Count

    For i = 2 To fin
        .Range("G" & i) = tabloCoul.Item(Range("G" & i).Interior.Color)
    Next i
           
End With
Application.ScreenUpdating = True
End Sub
 

Discussions similaires

Réponses
6
Affichages
207
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…