Couleur dans Listview
g
Bonjour,
j'ai besoin d'aide pour améliorer la lecture de ma listview en appliquant la même couleur de police que mon tableau (couleur de police du tableau par mise en forme conditionnelle), et voici le code que j'utilise pour ma listview:
Private Sub LVW_Fill(ByVal sFilter As String, ByVal iCol As Integer)
'Variables locales
Dim iCnt As Byte
Dim iRnd As Integer
Dim oRng As Excel.Range
Dim oItem As ListItem
'Initialisation de la ListView
ListView1.ColumnHeaders.Clear
ListView1.FullRowSelect = True
ListView1.ListItems.Clear
ListView1.View = lvwReport
ListView1.Gridlines = True
'Remplissage de la ListView
Set oRng = Sheets("pointage").Cells(6, 1)
Do Until oRng.Value = ""
'-- En-têtes
If oRng.Row = 6 Then
ListView1.ColumnHeaders.Add , , oRng.Offset(0, 0), 40
ListView1.ColumnHeaders.Add , , oRng.Offset(0, 1), 100, lvwColumnCenter
ListView1.ColumnHeaders.Add , , oRng.Offset(0, 2), 80
ListView1.ColumnHeaders.Add , , oRng.Offset(0, 3), 40
ListView1.ColumnHeaders.Add , , oRng.Offset(0, 4), 80
For iCnt = 5 To 41
ListView1.ColumnHeaders.Add , , oRng.Offset(0, iCnt), 25, lvwColumnCenter
Next iCnt
' Données
Else
iRnd = Int((4 * Rnd) + 1)
If LCase$(Left$(oRng.Offset(0, iCol), Len(sFilter))) = LCase$(sFilter) Then
Set oItem = ListView1.ListItems.Add(, , oRng.Offset(0, 0))
For iCnt = 1 To 42
oItem.ListSubItems.Add , , oRng.Offset(0, iCnt)
Next iCnt
End If
End If
Set oRng = oRng.Offset(1, 0)
Loop
End Sub
j'ai essayé en rajoutant ceci:
oItem.ListSubItems(iCnt).ForeColor = oRng.Offset(0, iCol).Font.Color
mais ça marche pas
Merci a vous
Bonjour
Tu ne peux pas récupérer comme cela la couleur issue d'un format conditionnel
On peut y arriver bien sur mais pas des plus simple
On peut aussi recalculer la formule du format conditionnel pour savoir quelle couleur appliquée
Avec une couleur en "dur" ta formule est bonne à part iCol à remplacer par iCnt
g
Bonjour Banzai64,
j'ai pris tes conseils en considérations et ça m'arrange comme ça
je vous remercié
cordialement
Gestionnaire_rh