Bonjour,
Je souhaite faire une macro qui recherche dans ma base de données en fonction des champs selectionnés dans les listbox1 et 2, qui se réfèrent aux colonnes D et E de ma base, et qui affiche les lignes résultats de la colonne B à E dans la listbox3.
voici mon code :
le problème c'est que cela ne m'affiche que les lignes résultat qui se suivent dans ma base de données.
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 Private Sub CommandButton3_Click() Dim i As Long, j As Long, activity As Boolean, sector As Boolean, champ As Range, recherchok As Range Set champ = Sheet3.Range("B1:E1") ListBox3.ColumnCount = Sheet3.Range("B1:E1").Columns.Count For j = 2 To Sheet3.UsedRange.Rows.Count For i = 0 To ListBox1.ListCount - 1 If Sheet3.Range("D" & j).Value = ListBox1.List(i) And ListBox1.Selected(i) = True Then activity = True Next i For i = 0 To ListBox2.ListCount - 1 If Sheet3.Range("E" & j).Value = ListBox2.List(i) And ListBox2.Selected(i) = True Then sector = True Next i If activity = True And sector = True Then Set recherchok = Sheet3.Cells(j, 2).Resize(1, 4) Set champ = Application.Union(champ, recherchok) End If activity = False sector = False Next j ListBox3.List() = champ.Value End Sub
Pouvez-vous m'aider???
Partager