Format conditionnel dans un Listview

Le
Reidid 06
Bonsoir

Dans un Listview je souhaite changer la couleur de la police en fonction de=
s valeurs de la première colonne.

Dans cette 1ère colonne nous trouvons la référence des articles repor=
tés, puis des détails dans les colonnes suivantes.
Exemple:
1/ 835
2/ 850
3/ 850
4/ 872
5/ 880
6/ 880
7/ 880
etc

A chaque fois que ma référence d'article change j'aimerais pouvoir auss=
i changer la couleur (Forecolor) de ma police lors de la mise en forme. Par=
exemple:
835 en Noir
850 en bleu
850 en bleu
872 en noir
880 en bleu
880 en bleu
880 en bleu

Pour le moment j'ai la macro suivante qui me permet de changer de couleur 1=
ligne sur 2.

Private Sub MiseEnForme()
Dim x As Long
Dim j As Integer

With ListViewRequetes
For x = 1 To .ListItems.Count
If (Int(x / 2) = x / 2) Then
.ListItems(x).ForeColor = &HC00000
For j = 1 To 11
.ListItems(x).ListSubItems(j).ForeColor = &HC00000 =

Next
Else
.ListItems(x).ForeColor = &H80000008
For j = 1 To 11
.ListItems(x).ListSubItems(j).ForeColor = &H80000008
Next
End If
Next
End With

End Sub

J'ai essayé plusieurs boucles cet après-midi mais sans succès, merci =
de votre aide.

Cordialement
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichD
Le #25944772
Bonjour,

'Mettre de la couleur dans la colonne 2 du ListView
'À toi d'adapter...

With ListView1
UseItemStyleForSubItems = False
For A = 1 To .ListItems.Count
With .ListItems(A).ListSubItems(2)
Select case clng(.Text)
case 835, 872
.Bold = True 'Caractère gras si besoin
.ForeColor = vbBlack
Case 850, 880
.Bold = True 'Caractère gras si besoin
.ForeColor = vbBlack
End Select
End With
Next
.Refresh
End With
MichD
Le #25944802
With ListView1
UseItemStyleForSubItems = False
For A = 1 To .ListItems.Count
With .ListItems(A).ListSubItems(2)
Select case clng(.Text)
case 835, 872
.Bold = True 'Caractère gras si besoin
.ForeColor = vbBlack
Case 850, 880
.Bold = True 'Caractère gras si besoin
.ForeColor = vbBlue
End Select
End With
Next
.Refresh
End With
Reidid 06
Le #25944942
Bonsoir MichD

Merci de ton aide.

J'ai finalement trouvé une solution qui me permet maintenant d'avoir dans mon listview la couleur de la police identique tant que la référence a rticle de ma 1ère colonne ne change pas.

Bonne soirée
Didier
Publicité
Poster une réponse
Anonyme