Forme excel de couleur suivant valeurs
Résolu
freddv
Messages postés
13
Statut
Membre
-
supraman46 Messages postés 57 Statut Membre -
supraman46 Messages postés 57 Statut Membre -
Bonjour,
voici mon problème, j'ai récupéré un bout de code vba pour excel qui ne me satisfait pas entièrement, je poste donc mon message si toutefois qq'un connait la réponse...
La problématique : prendre une forme excel (Ellipse par exemple)est la colorier en vert si le résultat est positif et en rouge si négatif.
Le code
Private Sub Worksheet_Change(ByVal Target As Range)
With ActiveSheet.Shapes("Ellipse 1").OLEFormat.Object
.Interior.ColorIndex = Range("A1").Interior.ColorIndex
End With
End Sub
Les problèmes de ce code : pas possible de fonctionner avec la mise en forme automatique, le code regarde juste la couleur de la cellule en A1 dans l'exemple et colorie l'Ellipse 1 de la couleur de fond de cette même case.
Si quelqu'un avait une idée, cela m'arrangerai bien.Merci beaucoup
voici mon problème, j'ai récupéré un bout de code vba pour excel qui ne me satisfait pas entièrement, je poste donc mon message si toutefois qq'un connait la réponse...
La problématique : prendre une forme excel (Ellipse par exemple)est la colorier en vert si le résultat est positif et en rouge si négatif.
Le code
Private Sub Worksheet_Change(ByVal Target As Range)
With ActiveSheet.Shapes("Ellipse 1").OLEFormat.Object
.Interior.ColorIndex = Range("A1").Interior.ColorIndex
End With
End Sub
Les problèmes de ce code : pas possible de fonctionner avec la mise en forme automatique, le code regarde juste la couleur de la cellule en A1 dans l'exemple et colorie l'Ellipse 1 de la couleur de fond de cette même case.
Si quelqu'un avait une idée, cela m'arrangerai bien.Merci beaucoup
A voir également:
- Forme excel de couleur suivant valeurs
- Mise en forme conditionnelle excel - Guide
- Liste déroulante excel - Guide
- Somme si couleur excel - Guide
- Word et excel gratuit - Guide
- Mise en forme tableau word - Guide
2 réponses
Salut,
Si j'ai bien tout compris, si la valeur est positive en A1 l'éllipse est verte et si est A1 négatif en rouge qui s'applique sur l'Ellipse1.
Regardes ce code
Private Sub Worksheet_Change(ByVal Target As Range)
If [A1] < 0 Then
With ActiveSheet.Shapes("Ellipse 1").OLEFormat.Object
.Interior.ColorIndex = 3
End With
Else
With ActiveSheet.Shapes("Ellipse 1").OLEFormat.Object
.Interior.ColorIndex = 4
End With
End If
End Sub
Mais si tu remplaces l'éllipse par un rond police Webdings tu peux passer par une mise en forme conditionnelle directe
Si j'ai bien tout compris, si la valeur est positive en A1 l'éllipse est verte et si est A1 négatif en rouge qui s'applique sur l'Ellipse1.
Regardes ce code
Private Sub Worksheet_Change(ByVal Target As Range)
If [A1] < 0 Then
With ActiveSheet.Shapes("Ellipse 1").OLEFormat.Object
.Interior.ColorIndex = 3
End With
Else
With ActiveSheet.Shapes("Ellipse 1").OLEFormat.Object
.Interior.ColorIndex = 4
End With
End If
End Sub
Mais si tu remplaces l'éllipse par un rond police Webdings tu peux passer par une mise en forme conditionnelle directe
Premièrement merci beaucoup pour ton aide avec ce code :) Je voulais te demander s'il serait possible aussi d'y ajouter une couleur spécifique pour la police? Exemple pour le "color index 3 j'aimerais que la police soit noire et pour l'autre color index elle soit blanche.
est-ce possibe?
merci à l'avance pour ton aide
tu aurais dû ouvrir ta propre discussion, regarde comme cela
Private Sub Worksheet_Change(ByVal Target As Range)
If [A1] < 0 Then
With ActiveSheet.Shapes("Ellipse 1").OLEFormat.Object
.Interior.ColorIndex = 3
.Font.ColorIndex = 1
End With
Else
With ActiveSheet.Shapes("Ellipse 1").OLEFormat.Object
.Interior.ColorIndex = 4
.Font.ColorIndex = 2
End With
End If
End Sub
Merci pour la mise à jour et désolé la prochaine fois je vais ouvrir un nouveau sujet sans faute.
Un gros merci encore!
bonne soirée