Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$2" And Target.Count = 1 Then
Target.Validation.Delete
If Not IsError(Application.Match(Target, [choix1], 0)) Then
Target.Validation.Add xlValidateList, Formula1:="=" & "offset(Choix2,1,match(C2,Choix1,0)-1,countA(offset(Choix2,,match(C2,Choix1,0)-1))-1)"
Else
Target.Validation.Add xlValidateList, Formula1:="=choix1"
End If
End If
End Sub