coloré une ligne

akramenergie

XLDnaute Occasionnel
Bonjour les amis

je dévellope une macro sous vba pour excel je veut rajouté un truc sur mon code te je sais pas comment faire je veut que lorsque ma macro détecte un planninge imcomplet elle me colore la ligne ou il ya la non comformité???
voila mon code
For k = 2 To 32
If Sheets("Feuil1").Range("D" & k).Value <> 0 Then

If Sheets("Feuil1").Range("D" & k).Value <= 20 Then
MsgBox "Planning Incomplet"

With Selection.Interior
.ColorIndex = 3
.Pattern = xlSolid
End With
'Sheets("Feuil1").Range("D" & k)
Else
MsgBox "ok"
End If
Else
End If

Next

End Sub
 

Ubot303

XLDnaute Occasionnel
Re : coloré une ligne

Bonjour à toi,

Petite remarque d'abord :
Le Sheets("Feuil1").Range("D" & k).Value est un peu lourd ;)
Comme ta variable k passe de 2 à 32, pourquoi ne pas mettre
Sheets("Feuil1").cells (k,4).Value ?

Ensuite ton "With" a l'air de provenir de l'enregistreur de macro et tu as du zapper la ligne qui séléctionne une case.
En effet, With Selection.Interior indique que tu veux modifier l'interieur d'une sélection avec les paramètres qui suivent.

En espérant avoir aidé ;)
 

akramenergie

XLDnaute Occasionnel
Re : coloré une ligne

c'est bon j'ai trouvé comment collorer au moin la cellule concerner :
Sheets("Feuil1").Range("D" & k).Interior.Color = RGB(0, 255, 0)

maintenent je veut pas colloré just la cellule concerné sur la colone D mais aussi celle qui se trouve dans la colone E et F comment fair SVP
 

akramenergie

XLDnaute Occasionnel
Re : coloré une ligne

Moi j'ai penssé a faire comme ca ???
Sheets("Feuil1").Range("A" & k).Interior.Color = RGB(255, 0, 0) 'Rouge
Sheets("Feuil1").Range("B" & k).Interior.Color = RGB(255, 0, 0) 'Rouge
Sheets("Feuil1").Range("C" & k).Interior.Color = RGB(255, 0, 0) 'Rouge
Sheets("Feuil1").Range("D" & k).Interior.Color = RGB(255, 0, 0) 'Rouge
Sheets("Feuil1").Range("E" & k).Interior.Color = RGB(255, 0, 0) 'Rouge
Sheets("Feuil1").Range("F" & k).Interior.Color = RGB(255, 0, 0) 'Rouge

Mais sa l'aire d'étre pas top???
 

Ubot303

XLDnaute Occasionnel
Re : coloré une ligne

Dans ta première boucle, tu parcours la colonne D de la ligne 2 à 32.

Tu souhaites maintenant colorier la colonne E et F sur le même critère que la colonne D?
Il suffit de rajouter cela :)

For k = 2 To 32

If Sheets("Feuil1").cells (k,4).Value <= 20 Then
MsgBox "Planning Incomplet"

Sheets("Feuil1").cells (k,4).Interior.ColorIndex = 3 'colorie D + chiffre
Sheets("Feuil1").cells (k,5).Interior.ColorIndex = 3 'colorie E + chiffre
Sheets("Feuil1").cells (k,6).Interior.ColorIndex = 3 'colorie F + chiffre


Else
MsgBox "Planning complet"
End If


Next
 

Discussions similaires

Réponses
13
Affichages
324

Statistiques des forums

Discussions
312 684
Messages
2 090 916
Membres
104 697
dernier inscrit
Pierrot Hubert