XL 2019 Dégradé de couleurs en fonction des couleurs contenues dans 2 cellules

ruliann

XLDnaute Occasionnel
Bonjour,

En A1 j'ai la cellule qui est colorée en jaune.
En B2 j'ai la cellule qui est colorée en rouge.

J'aimerais créer un dégradé de couleur qui part de la couleur contenue en A1 vers la couleur contenue en B2 (donc du jaune au rouge), un dégradé qui comporterait 15 nuances.

Ces 15 nuances seraient affichées entre A3 et A18.

A l'occasion d'un autre post, j'avais récupéré ce bout de code :

VB:
Sub degrade1()
Dim coul&, i&
coul = Cells(1, "A").Interior.Color
For i = 20 To 2 Step -1
Cells(i + 5, "A").Interior.Color = coul
Cells(i + 5, "A").Interior.TintAndShade = ((i - 1) + i / 30) / 20
Next
End Sub

Auriez-vous une idée pour l'adapter à mon problème?
 
Solution
re
perso j'ai repris une vielle fonction qui me ramène une couleur vers une autre par pas de X(voulus)
avec une simple sub je l'appelle autant de fois que j'ai de couleur
VB:
Sub test()
    Dim q&(1 To 4), Pas&
    q(1) = [A1].Interior.Color
    q(2) = [A2].Interior.Color
    q(3) = [A3].Interior.Color
    q(4) = [A4].Interior.Color
    Pas = 7
    creategradient q(1), q(2), Pas, 1
    creategradient q(2), q(3), Pas, Pas + 1    'pour laisser une blanche
    creategradient q(3), q(4), Pas, Pas * 2
    'on peut la lancer autant de fois que l'on veut
End Sub

Function creategradient(c1&, c2&, FOIS&, start&)
    Dim R, G, B, R2, G2, B2, PartR, PartG, PartB
    B = c1 \ 65536: G = (c1 - B * 65536) \ 256: R = c1 - B * 65536 - G * 256...

Dranreb

XLDnaute Barbatruc
Bonjour.
J'ai ajouté une troisième façon de paramétrer les jalons de valeurs selon des notions un peu plus courantes: Angle de teinte, luminosité relative et saturation. Elle favorise la spécification d'une couleur bien saturée mais au détriment d'un contrôle précis de la clarté perçue de la surface colorée.
 

Pièces jointes

  • CouleurClsRuliann.xlsm
    56.3 KB · Affichages: 1

Discussions similaires

Statistiques des forums

Discussions
312 561
Messages
2 089 662
Membres
104 249
dernier inscrit
Nicolas TUDOUX