Bonsoir Caro curieuse,
Un essai via une macro. Le code est dans le module de code de la feuille "Résultats".
Le code s'exécute automatiquement quand on sélectionne la feuille "Résultats".
Le tableau source de la la feuille "Données" n'a pas besoin d'être trié. La macro se charge de le faire sur la feuille "Résultats".
Private Sub Worksheet_Activate()
Dim der&
Application.ScreenUpdating = False
der = Sheets("Données").UsedRange.Row + Sheets("Données").UsedRange.Rows.Count - 1
Range("a2:c" & Rows.Count).Clear
Range("a2:c" & der) = Sheets("Données").Range("a2:c" & der).Value
Range("b:c").Insert
On Error GoTo Err001
Range("b3").FormulaR1C1 = "=LEFT(RC[-1],SEARCH(""-"",RC[-1])-1)"
Range("b3").AutoFill Destination:=Range("b3:b" & der)
Range("c3").FormulaR1C1 = "=MID(RC[-2],SEARCH(""-"",RC[-2])+1,99)"
Range("c3").AutoFill Destination:=Range("c3:c" & der)
Range("b3:c" & der) = Range("b3:c" & der).Value
Range("a2:e" & der).Sort key1:=[b2], order1:=xlDescending, key2:=[c2], order2:=xlAscending, _
key3:=[d2], order3:=xlDescending, MatchCase:=False, Header:=xlYes
Range("a2:e" & der).RemoveDuplicates Columns:=1
Range("a2:e" & Cells(Rows.Count, "a").End(xlUp).Row).Borders.LineStyle = xlContinuous
Err001:
Columns("b:c").Delete
End Sub