Recuperer et modifier la couleur du background d'une cellule

Bonjour J'aurais besoin en VBA de faire cette operation:

Sub aa()

Dim rtmp, gtmp, btmp As Integer

[...]

For k = 1 to 20
    Range("C"& k).Select
    ' Recuperer couleur background ActiveCell
    ' Modifier couleur background ActiveCell avec la couleur rgb = (rtmp,gtmp,btmp)
    [...]
    'Revenir a la couleur initiale pour l'ActiveCell
Next
[...]
End Sub

Pour modifier il semblerait qu'il suffisse de faire ca:

Range("C" & k).Interior.Color = RGB(rtmp,gtmp,btmp)

Mais j'ai aucune idee de comment recuperer la couleur actuelle, et la remettre.

Quelqu'un pourrait m'aider?

Edit: S'il n'y a pas de couleur de background, j'aimerais que la macro detecte qu'il n'y a pas de couleur, et qu'il supprime la couleur temporaire que j'aurai mise.

Merci

Bonjour,

Tu peux essayer comme ceci :

Public Blue As Integer
Public Green As Integer
Public Red As Integer

Function SeeRGB(Target As Range)
'Convertir les codes couleurs en valeurs RGB
Dim RGBC As Long
RGBC = Target.Interior.Color
Red = Int(RGBC Mod 256)
Green = Int((RGBC Mod 65536) / 256)
Blue = Int(RGBC / 65536)
End Function

Sub aa()
Dim rtmp As Integer
Dim gtmp As Integer
Dim btmp As Integer
'les valeurs
For k = 1 To 20

    fct = SeeRGB(Range("C" & k))
    Range("C" & k).Interior.Color = RGB(rtmp, gtmp, btmp)
    'Ta macro
    Range("C" & k).Interior.Color = RGB(Red, Green, Blue)
Next
End Sub

Voilà ! A plus !

Rechercher des sujets similaires à "recuperer modifier couleur background"