Private Sub ComboBox1_Change()
Dim O As Worksheet 'déclare la variable OL (Onglet)
Dim TV As Variant 'déclare la variable TV (Tableau des Valeurs)
Dim I As Integer 'déclare la variable I (Incrément)
Dim K As Integer 'déclare la variable K (incrément)
Dim TL() As Variant 'déclare la variable TL (Tableau des Lignes)
Me.ListBox1.Clear 'vide la ListBox1
Set O = Worksheets("Feuil1") 'définit l'onglet O
TV = O.Range("A1").CurrentRegion 'définit le tableau des valeurs TV
K = 1 'initialise la variable K
For I = 2 To UBound(TV) 'boucle sur toutes les lignes I du tableau des valeurs TV (en partant de la seconde)
If TV(I, 1) = Me.ComboBox1.Value Then 'condition : si la donnée ligne I colonne 1 de TV est égale à la valeur de la ComboBox1
ReDim Preserve TL(1 To 5, 1 To K) 'redimensionne le tableau des lignes TL (5 lignes, K colonnes)
TL(1, K) = TV(I, 1) 'récupère dans la ligne 1 de TL la donnée en colonne 1 de TV
TL(2, K) = TV(I, 3) 'récupère dans la ligne 2 de TL la donnée en colonne 3 de TV
TL(3, K) = TV(I, 6) 'récupère dans la ligne 3 de TL la donnée en colonne 6 de TV
TL(4, K) = TV(I, 8) 'récupère dans la ligne 4 de TL la donnée en colonne 8 de TV
TL(5, K) = TV(I, 9) 'récupère dans la ligne 5 de TL la donnée en colonne 9 de TV
K = K + 1 'incrément K (ajoute une colonne au tableau des lignes TL)
End If 'fin de la condition
Next I 'prochaine ligne de la boucle
Me.ListBox1.Column = TL 'alimente la ListBox1 avec le tableai TL (je ne connaissais pas cette méthode j'utilisais Me.ListBox1.List=Application.Transpose(TL), elle m'a plu...)
End Sub