Bonjour,
Je rencontre un problème similaire sur mon code.
J'ai le code suivant :
Private Sub Search_Click()
Dim Ind As Integer, DLig As Long, Lig As Long
Dim TabCrit() As String, NbCrit As Integer, NbFind As Integer
' Tableau des champs pas rapport au sens des colonnes
TabCrit = Split("Base_source,Base,Table,Donnee,Equipe,Responsable,Categorie,Sous_catégorie,Usage_détaillé,BU,Groupe,Définition", ",")
' Effacer la ListBox avant
Me.ListBox1.Clear
' Avec la feuille
With Sheets("Cartographie")
' Mémoriser la dernière ligne remplie du tableau
DLig = .Range("C" & Rows.Count).End(xlUp).Row
' Pour chaque ligne
For Lig = 2 To DLig
' Mettre le nombre de critères et le nombre de valeurs trouvées à ZERO
NbCrit = 0: NbFind = 0
' Pour chaque critère correspondant à ceux de la carto
For Ind = 4 To 9
' Si le critère de recherche a été renseigné
If Me.Controls(TabCrit(Ind)) <> "" Then
NbCrit = NbCrit + 1
' Si le critère ressemble au contenu de la cellule
If UCase(.Cells(Lig, 1 + Ind)) Like UCase("*" & Me.Controls(TabCrit(Ind)) & "*") Then
' Comptabiliser le nombre de valeurs correspondantes
NbFind = NbFind + 1
End If
End If
Next Ind
' Si le nombre de critères rempli = le nombre de valeurs trouvées
If NbCrit = NbFind Then
' Ajouter l'item
Me.ListBox1.AddItem .Cells(Lig, 2)
' Pour chaque colonne
For Ind = 1 To 9
' Ajouter les valeurs correspondantes
Me.ListBox1.List(Me.ListBox1.ListCount - 1, Ind) = .Cells(Lig, 1 + Ind)
Next Ind
End If
Next Lig
End With
End Sub
La ligne soulignée en gras est celle qui me pose problème. En effet le tableau généré dans la listbox ne peut contenir l'intégralité des champs que je veux afficher.
TabCrit est un tableau virtuel représentant ma base de données. Lorsque dans la feuille je perçois une combobox (ie un champ de recherche) similaire à une colonne de TabCrit alors j'effectue une recherche dans ma base de données et affiche les colonnes de ma base de données (Ind).
Malheureusement, même avec l'aide provenant de votre discussion je n'arrive pas à adapter mon code pour aller au-delà des 10 colonnes de ma listbox. Pourriez-vous m'aider ?