Remplissage d'une cellule avec une macro grâce à une condition
Résolu
kikou93
Messages postés
416
Date d'inscription
Statut
Membre
Dernière intervention
-
kikou93 Messages postés 416 Date d'inscription Statut Membre Dernière intervention -
kikou93 Messages postés 416 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je demande votre aide pour m'aider sur un problème
J'ai essayé de créer un macro qui me permet de changer le remplissage d'une cellule grace a une condition (des cellules de la Colonne B) en cliquent sur un bouton.
Voila le macro :
Mais il ne change que le remplissage de la cellule selectionnée avec une seul couleur même si je mets des conditions :
Si la valeur de la cellule >= 10 ----> Couleur vert ----> Color = 5287936 ;
Si la valeur de la cellule < 10 ----> Couleur rouge ----> Color = 255 ;
Si la valeur de la cellule >= 10 ----> Aucune couleur ----> Color = 16777215 ;
Voici le fichier Excel :
http://www.cjoint.com/c/FADuoqJ7f8G
Je suis débutant dans le langage VBA, j'ai sûrement fait beaucoup d'erreur pouvez-vous les corriger s'il vous plaît.
Merci d'avance
Je demande votre aide pour m'aider sur un problème
J'ai essayé de créer un macro qui me permet de changer le remplissage d'une cellule grace a une condition (des cellules de la Colonne B) en cliquent sur un bouton.
Voila le macro :
Sub Couleur()
Dim L As Long
For L = 1 To 40
If Range("B" & L) >= 10 Then
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 5287936
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
If Range("B" & L) < 10 Then
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
If Range("B" & L) = " " Then
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 16777215
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
Next
End Sub
Mais il ne change que le remplissage de la cellule selectionnée avec une seul couleur même si je mets des conditions :
Si la valeur de la cellule >= 10 ----> Couleur vert ----> Color = 5287936 ;
Si la valeur de la cellule < 10 ----> Couleur rouge ----> Color = 255 ;
Si la valeur de la cellule >= 10 ----> Aucune couleur ----> Color = 16777215 ;
Voici le fichier Excel :
http://www.cjoint.com/c/FADuoqJ7f8G
Je suis débutant dans le langage VBA, j'ai sûrement fait beaucoup d'erreur pouvez-vous les corriger s'il vous plaît.
Merci d'avance
A voir également:
- Macro excel remplir cellule en fonction d'une autre
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Fonction si et excel - Guide
- Excel cellule couleur si condition texte - Guide
- Liste déroulante excel - Guide
- Proteger cellule excel - Guide
2 réponses
Bonjour,
Essaie comme cela
A+
Essaie comme cela
Sub Couleur()
Dim L As Long
For L = 5 To 20
With Range("B" & L)
If .Value >= 10 Then
.Interior.Color = 5287936
ElseIf .Value = "" Then
.Interior.Color = 16777215
ElseIf .Value < 10 Then
.Interior.Color = 255
End If
End With
Next
End Sub
A+
ça fonctionne très bien merci.
mais il y a juste un petit problème j'ai mets ce code-là :
pour que si la cellule est vide le remplissage sera avec une couleur blanche, mais on dirait que ce n'est pas pris en compte.
peux-tu m'aider sur ça s'il te plaît.
mais il y a juste un petit problème j'ai mets ce code-là :
If Range("B" & L) = " " Then
With Range("B" & L).Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 16777215
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
pour que si la cellule est vide le remplissage sera avec une couleur blanche, mais on dirait que ce n'est pas pris en compte.
peux-tu m'aider sur ça s'il te plaît.