J'ai eu une aide extérieur voici le code fourni (c'est juste excellent)
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Set f = Sheets("feuil1")
Set zsaisie = Range("B3:C382")
If Not Intersect(zsaisie, Target) Is Nothing And Target.Count = 1 Then
ligne = Target.Row
jour = Cells(ligne, "a")
Set d = CreateObject("scripting.dictionary")
début = zsaisie.Row
fin = début + zsaisie.Rows.Count - 1
For i = début To fin
If jour = Cells(i, "a") Then
d(Cells(i, "b").Value) = ""
d(Cells(i, "c").Value) = ""
End If
Next i
Set d2 = CreateObject("scripting.dictionary")
For Each c In [liste]
If Not d.exists(c.Value) Then d2(c.Value) = ""
Next c
Me.ComboBox1.List = d2.keys
Me.ComboBox1.Height = Target.Height + 3
Me.ComboBox1.Width = Target.Width
Me.ComboBox1.Top = Target.Top
Me.ComboBox1.Left = Target.Left
Me.ComboBox1 = Target
Me.ComboBox1.Visible = True
Me.ComboBox1.Activate
Else
Me.ComboBox1.Visible = False
End If
End Sub
Private Sub ComboBox1_Click()
ActiveCell = Me.ComboBox1
End Sub