Private Sub B_ok_Click()
Dim Ligne, nLignes, Typ, x, y
Ligne = ActiveCell.Row 'stocke le n° de ligne de la cellule sélectionnée de la feuille Choix
With Feuil1
'toutes les adresses précédées d'un point s'appliquent à la feuille BD
'recherche du type de véhicule dans la colonne A de la feuille BD
Set Typ = .Columns(1).Find(ComboBox1, LookIn:=xlValues)
'calcule le nombre de lignes correspondant au type dans le feuille BD et retranche 1
nLignes = WorksheetFunction.CountIf(.Columns(1), Typ)
For y = Typ.Row To Typ.Row + nLignes
'si la marque, le modèle et la couleur correspondent aux listes déroulantes alors la boucle s'arrête sur la ligne y
If .Cells(y, 2) = ComboBox2 And .Cells(y, 3) = ComboBox3 And .Cells(y, 4) = ComboBox4 Then Exit For
Next
'la boucle reporte les valeurs de la ligne y de BD (colonnes A:H) sur la ligne Ligne de la feuille Choix
For x = 1 To 8
Cells(Ligne, x) = .Cells(y, x)
Next x
End With
Unload Me
End Sub