Renvoyer le code RGB de cellules

Bonjour,

J'ai un petit problème, je fais donc appel à vous pour m'aider.

J'aimerais renvoyer les codes RGB des couleurs dans mon tableau. J'ai réussi à renvoyer l'index pour le moment.

J'ai trouvé ce code en ligne qui à l'air de fonctionner mais je n'arrive pas à l'adapter à mon cas puisque que je dois répèter l'action sur un ensemble de lignes.

Sub Couleurs()
Dim TSe As TableStyle, CoulLong&, CoulIdx%, R&, V&, B&
Set TSe = ActiveSheet.ListObjects(1).TableStyle
CoulLong = TSe.TableStyleElements(xlHeaderRow).Interior.Color
Range("m1") = CoulLong
Range("n1").Interior.Color = CoulLong
Range("n2").Interior.ColorIndex = -4142
R = Int(CoulLong Mod 256)
V = Int((CoulLong Mod 65536) / 256)
B = Int(CoulLong / 65536)
Range("m4") = R
Range("m5") = V
Range("m6") = B
Range("m7") = "&H" & Right$("00000" & Hex(CoulLong), 6) & "&"
End Sub

J'espère que j'ai été assez claire, n'hésitez pas si vous avez d'autres questions,

Merci d'avance

16forum-v2.xls (39.50 Ko)

bonjour,

une proposition

Sub trouver_index()
    Dim DerLig As Long, CoulLong As Long
    Dim Cel As Range
    With Sheets("couleurs")
        DerLig = .[A65000].End(xlUp).Row
        .Range("A2:A" & DerLig).Name = "Affaire"
        .Range("C2:C" & DerLig).Name = "indexs"
        For Each Cel In Range("B2:B" & DerLig)
            CoulLong = Cel.Interior.Color
            Cel.Offset(0, 1).Value = Cel.Interior.ColorIndex
            Cel.Offset(0, 2) = Int(CoulLong Mod 256) 'r
            Cel.Offset(0, 3) = Int((CoulLong Mod 65536) / 256) 'g
            Cel.Offset(0, 4) = Int(CoulLong / 65536) 'b
        Next Cel
    End With
End Sub

Génial merci beaucoup ça fonctionne très bien !

Rechercher des sujets similaires à "renvoyer code rgb"