Demande d'aide pour un remplissage de cellules degradé en rgb

  • Initiateur de la discussion Initiateur de la discussion trycoon
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

trycoon

XLDnaute Nouveau
Bonsoir à tous ,

Je suis entrain de réaliser un projet qui est de colorié une map France en fonctions de chiffres d'affaires ou de valeurs .Ceci à été chose faite cependant le problème est il ne semble pas possible d'intégrer une couleur degradé hors des vbblue,green etc...

Je vous joins mon script et j'ai mis en orange ce que je n'arrive pas à faire.

Je tenais également à vous préciser que je suis noob pour l'instant dans vba xl

Merci à tous

'--------------------------------------------------------------------------------
Sub ColorMap()
Dim oSheet As Excel.Worksheet ' Feuille
Dim lLine As Long ' Numéro de ligne
Dim loShape As Shape ' Forme
Dim lColor As Long ' Couleur
' Feuille contenant la carte
Set oSheet = ThisWorkbook.Sheets("département")
' Désactive le remplissage de la carte
oSheet.Shapes("CarteFrance").Fill.Visible = msoFalse
' Pour chaque ligne de CA
For lLine = oSheet.UsedRange.Row + 1 To oSheet.UsedRange.Row + oSheet.UsedRange.Rows.Count
' Couleur de remplissage
' Rouge si CA diminue
' Vert si CA augmente
If oSheet.Cells(lLine, 4) > 0 Then
lColor = vbMagenta
'lColor = Selection.Interior.Color = RGB(54, 195, 52)
If oSheet.Cells(lLine, 4) > 1 Then
lColor = vbBlue
If oSheet.Cells(lLine, 4) > 2 Then
lColor = vbYellow
If oSheet.Cells(lLine, 4) > 5 Then
lColor = vbGreen
End If
End If
End If


Else

End If
' Parcours les départements de la carte
For Each loShape In oSheet.Shapes("CarteFrance").GroupItems
' Si la forme loShape a pour nom la valeur de la première colonne (l'identifiant FR-XX)
If loShape.Name = oSheet.Cells(lLine, 1) Then
' Réactive le remplissage de la forme
loShape.Fill.Visible = True
' Type de remplissage = couleur unie
loShape.Fill.Solid
' Pas de transparence
loShape.Fill.Transparency = 0#
' Couleur de remplissage
loShape.Fill.ForeColor.RGB = lColor
' La forme a été trouvée => on sort de la boucle
Exit For
End If
Next
Next
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour