Bonjour,

J'ai une feuille qui comporte des données. Elle est agrémentée de 4 boutons dont un qui devrait me servir à rechercher un produit.
Lorsque je clique sur ce bouton, un UserForm (FrmRecherche) s'ouvre. Il contient un Label (LblProduitRecherche), une TextBox (TxtProduitrecherche) qui me permet d'entrer le nom du produit recherché ainsi qu'une ListView (LstRecherche) qui devrait m'afficher les résultats de ma recherche.

Je voudrais que cette ListView ne reprenne que les colonnes B,C, J, K et L de ma base données.

Voici le code que j'utilise:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
 
 
Option Explicit
Dim WS As Worksheet
 
Sub InitListView()
 
Dim i As Integer
Dim LstRow As Integer
 
  With Me.LstRecherche
 
    .ListItems.Clear
 
    For i = 5 To WS.Range("B" & Rows.Count).End(xlUp).Row
 
      .ListItems.Add , WS.Range("B" & i).Address, WS.Range("B" & i)
      i = i + 1
 
      .ListItems(Nb).ListSubItems.Add , , WS.Range("C" & i)
      .ListItems(Nb).ListSubItems.Add , , WS.Range("J" & i)
      .ListItems(Nb).ListSubItems.Add , , WS.Range("K" & i)
      .ListItems(Nb).ListSubItems.Add , , WS.Range("L" & i)
 
    Next i
 
  End With
 
End Sub
 
 
Private Sub UserForm_Initialize()
 
    Set WS = Sheets("Listing produit")
 
    With Me.LstRecherche
 
         With .ColumnHeaders
             .Clear
 
             .Add , , WS.Range("B5"), 110, lvwColumnLeft
             .Add , , WS.Range("C5"), 30, lvwColumnLeft
             .Add , , WS.Range("J5"), 50, lvwColumnLeft
             .Add , , WS.Range("K5"), 20, lvwColumnLeft
             .Add , , WS.Range("L5"), 50, lvwColumnLeft
        End With
            .View = lvwReport
            .Gridlines = True
            .FullRowSelect = True
                           '
    End With
 
    InitListView
 
End Sub
Problème

Lorsque je lance la macro, le message suivant apparaît:

Membre de méthode ou de données introuvable.
Le terme .ColumnHeaders est surligné en bleu.

J'utilise Excel 2016.

J'espère que quelqu'un pourra résoudre mon problème.

Merci