Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim n&, i&, c As Range
n = 9 'nombre de cellules, à adapter
For i = 1 To n
Set c = Cells.Find("ordre " & i, , xlValues)
If Not c Is Nothing Then If c(1, 0) = "" Then c(1, 0).Select: Exit Sub
Next
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim n&, i&, c As Range, j&
n = 9 'nombre de cellules, à adapter
For i = 1 To n
Set c = Cells.Find("ordre " & i, , xlValues)
If Not c Is Nothing Then
If Not Intersect(Target, c(1, 0)) Is Nothing Then
Application.ScreenUpdating = False
Application.EnableEvents = False 'désactive les évènements
For j = i + 1 To n
Set c = Cells.Find("ordre " & j)
If Not c Is Nothing Then c(1, 0) = ""
Next j
Application.EnableEvents = True 'réactive les évènements
Exit Sub
End If
End If
Next i
End Sub