Salut FredGres,
Salut DjiDji,
Une version VBA qui permet de soulager la feuille de toutes ces listes de validation en n'en posant que là où on la demande!
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
Dim iRow%, iCol%
'
If Selection.Count > 1 Then Exit Sub
Cells.Validation.Delete
'
If Not Intersect(Target, Range("A:A")) Is Nothing Then
If Target.Row > 3 Then
Target.Offset(0, 1) = ""
iCol = Worksheets("Datas").Cells(3, Columns.Count).End(xlToLeft).Column
Target.Validation.Add Type:=xlValidateList, Formula1:="=Datas!B3:" & Chr(64 + iCol) & "3"
End If
End If
'
If Not Intersect(Target, Range("B:B")) Is Nothing Then
If Target.Row > 3 Then
If Target.Offset(0, -1) <> "" Then
iCol = Worksheets("Datas").Rows(3).Find(what:=Target.Offset(0, -1), lookat:=xlWhole, LookIn:=xlValues, searchdirection:=xlNext).Column
iRow = Worksheets("Datas").Range(Chr(64 + iCol) & Rows.Count).End(xlUp).Row
Target.Validation.Add Type:=xlValidateList, Formula1:="=Datas!" & Chr(64 + iCol) & "4:" & Chr(64 + iCol) & iRow & ""
Else
MsgBox "Vous devez d'abord spécifier une catégorie sportive!", vbInformation + vbOKOnly, "Encodage"
Target.Offset(0, -1).Select
End If
End If
End If
'
End Sub
A+