Affichage ListView en fonction de la valeur d'une cellule

Bonjour à tous,

Je voulais savoir si c'était possible de faire afficher quelques lignes sur la ListView en fonction d'une valeur contenue dans une cellule.

Sur la capture d'écran ci-dessous, je ne voudrai que afficher les lignes donc le statut est "En cours". Les autres lignes ne doivent pas être affichés sur la ListView.

image

Le code qui gère la listview en question :

'****************************
'Procédure d'alimentation de la LV & Gestion des couleurs
'***************************
Private Sub ActualisationLV2()

   Dim Lr As Long
   Dim Ligne As Integer
   Dim Cel As Range

   With Me.ListView3

        'Paramètres pour la ListView
        .ListItems.Clear
        .Gridlines = True
        .View = lvwReport
        .FullRowSelect = True
        '---------------------------

        Lr = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
        If Lr = 1 Then Exit Sub

        'Ajout des colonnes
            For Each Cel In ActiveSheet.Range("A2:A" & Lr)
             .ListItems.Add , , Cel.Text
             .ListItems(Cel.Row - 1).ListSubItems.Add , , Cel.Offset(, 2)
             .ListItems(Cel.Row - 1).ListSubItems.Add , , Cel.Offset(, 3)
             '.ListItems(Cel.Row - 1).ListSubItems.Add , , Cel.Offset(, 4)
             '.ListItems(Cel.Row - 1).ListSubItems.Add , , Cel.Offset(, 5)
             .ListItems(Cel.Row - 1).ListSubItems.Add , , Cel.Offset(, 7)
             .ListItems(Cel.Row - 1).ListSubItems.Add , , Cel.Offset(, 8)
             '.ListItems(Cel.Row - 1).ListSubItems.Add , , Cel.Offset(, 9)
             .ListItems(Cel.Row - 1).ListSubItems.Add , , Cel.Offset(, 11)
             .ListItems(Cel.Row - 1).ListSubItems.Add , , Cel.Offset(, 13)
             .ListItems(Cel.Row - 1).ListSubItems.Add , , Cel.Offset(, 14)

         Next Cel

    End With
End Sub

Merci d'avance pour les réponses !

Bon après-midi !

Bonjour,

Dans la boucle For... Next rajouter une condition

If Statut = "En cours" Then...
.ListItems.Add...

A+

Bonjour Ggalopin01,

Bonjour,

Dans la boucle For... Next rajouter une condition

If Statut = "En cours" Then...

.ListItems.Add...

A+

J'ai essayé de rajouter la condition afin de filtrer mais ça m'affiche rien du tout sur la ListView :

image

Je vais essayer de trouver le problème de mon côté.

Bonne soirée !

Désolé mais je ne travaille pas avec une boule cristal !

A+

Bonjour,

            For Each Cel In ActiveSheet.Range("A2:A" & Lr)
                  if cel.offset(,4)="En cours" then 
                        .ListItems.Add , , Cel.Text

                 end if

Bonjour,

Cela me donne le même résultat que précédemment.

Je pense qu'il faille prendre le problème dans un autre sens. C'est-à-dire supprimer des lignes qui ont le même nom situé dans la colonne "Statut"

Bonne soirée !

Le principe quand on vient sur un forum c'est d'essayer de faire ce que les mecs te disent. Surtout quand les gus affichent plusieurs milliers de réponses au compteur. En principe... ceux là se trompe rarement. Maintenant on force personne, hein !

A+

Bonsoir,

Bien évidemment que j'essaye vos codes et comprendre le but des codes cités ci-dessous. Je n'ai jamais prétendu que je n'essayais pas vos codes et ni forcé qui que se soit.

Bonne soirée

Comme on ne peut pas essayer car il n'y a pas de fichier joint, TAPUKA réessayer jusqu'à ce que ça marche !

Il y a 2 possibilités :

Soit ton Listview n'affichait déjà rien et il n'y a pas de raison qu'il marche mieux avec un filtre

Soit c'est le filtre qui bloque et dans ce cas c'est durement qu'il est mal appliqué : dans ce cas c'est ce principe qui s'applique :

sh1

Mais pour l'instant avec TOUSSA d'info on ne t'en dira pas plus.

A+

Bonjour …

«Bien évidemment que j'essaye vos codes et comprendre le but des codes … »

Pour t’inspirer, comme je l‘ai été à l’époque, voici un simple exemple (très réduit) contenant l’initialisation puis une gestion du contrôle ListView.

Remarque : cela fait longtemps que je ne l’utilise plus car sa portabilité est des plus réduites et parce que son seul avantage à mes yeux (d’es_tête) est l’ajout, non sans mal, de couleurs.

Quant à ma boule de cristal (offerte, non par un shadok qui se serait cassé la boule pour la dégoter, mais par un Gibi), elle est assez efficace car elle ne se réduit pas donner à la vision d’un seul exemple de situation invoquée.

44listview.xlsm (22.11 Ko)
Rechercher des sujets similaires à "affichage listview fonction valeur"