Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Couleur lignes Listview à partir de la valeur d'une colonne

Diane272727

XLDnaute Junior
Bonjour,
Je fais appel de nouveau à votre précieuse aide.
Dans la listview, comment mettre en couleur certaines lignes ?
Par exemple où la colonne b = 0.

Idéalement, je souhaiterai que la ligne soit remplie en couleur (par exemple en bleu).
Si ce n'est pas possible , en texte bleu.

Merci beaucoup pour votre aide.
Bien cordialement,
 

Pièces jointes

  • CouleurTitresLV.xlsm
    47.9 KB · Affichages: 5
Solution
Hello

pour écrire la ligne en rouge
VB:
Private Sub FilterListView()
    Dim rngCell As Range
    Dim LstItem As ListItem
    Dim RowCount As Long, ColCount As Long
    Dim i As Long, j As Long

    Me.ListView1.ListItems.Clear

    RowCount = Tbl.DataBodyRange.Rows.Count
    ColCount = Tbl.DataBodyRange.Columns.Count
   
    With Tbl.DataBodyRange
        'Remplir la Listview
        For i = 1 To RowCount
             If Not .Cells(i, 1).EntireRow.Hidden Then
                 Set LstItem = Me.ListView1.ListItems.Add(Text:=.Cells(i, 1).Value)
                 For j = 2 To ColCount
                    LstItem.ListSubItems.Add Text:=.Cells(i, j).Value
                 Next j
                 LstItem.ListSubItems.Add Text:=CStr(i)...

vgendron

XLDnaute Barbatruc
Hello

pour écrire la ligne en rouge
VB:
Private Sub FilterListView()
    Dim rngCell As Range
    Dim LstItem As ListItem
    Dim RowCount As Long, ColCount As Long
    Dim i As Long, j As Long

    Me.ListView1.ListItems.Clear

    RowCount = Tbl.DataBodyRange.Rows.Count
    ColCount = Tbl.DataBodyRange.Columns.Count
   
    With Tbl.DataBodyRange
        'Remplir la Listview
        For i = 1 To RowCount
             If Not .Cells(i, 1).EntireRow.Hidden Then
                 Set LstItem = Me.ListView1.ListItems.Add(Text:=.Cells(i, 1).Value)
                 For j = 2 To ColCount
                    LstItem.ListSubItems.Add Text:=.Cells(i, j).Value
                 Next j
                 LstItem.ListSubItems.Add Text:=CStr(i)
                 If LstItem <> "" Then
                    Me.ListView1.ListItems(i).ForeColor = RGB(255, 0, 0)
                    For j = 2 To ColCount
                        Me.ListView1.ListItems(i).ListSubItems(j).ForeColor = RGB(255, 0, 0)
                    Next
                End If
             End If
        Next i
    End With
    Tbl.AutoFilter.ShowAllData ' suppression du filtre auto
End Sub

voir ici
 

Discussions similaires

Réponses
16
Affichages
341
Réponses
10
Affichages
358
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…