Bonjour,
-> uniquement si la valeur en P=9999
tu déclares un second tableau et tu compares dans la boucle :
Sub remplir_CBOX_PROD()
Dim f As Worksheet
Dim tablo()
Dim j As Integer
Dim a As Variant
Dim b As Variant
Dim Lig As Long
Dim n As Range
Me.CBOX_PROD.Clear
Set f = Sheets("BD")
Set mondico = CreateObject("Scripting.Dictionary")
Lig = f.Cells(Rows.Count, 6).End(xlUp).Row
a = f.Range("F2:F" & Lig)
b = f.Range("P2:P" & Lig)
For I = 1 To UBound(a)
If a(I, 1) <> "" And b(I, 1) = 9999 Then mondico(a(I, 1)) = ""
Next I
temp = mondico.keys
Call Tri(temp, LBound(temp), UBound(temp))
Me.CBOX_PROD.List = temp
Set f = Nothing
Set mondico = Nothing
End Sub
-> avec saisie intuitive (premiers caractères tapés)
Voir la propriété "MatchEntry" mais comme les code sont très approchant pas sûr que ça fonctionne bien !
-> le tout trié numériquement
Tu as déjà une procédure de tri ?