Sub Classer()
Application.ScreenUpdating = False
With [Tableau1].ListObject.Range 'tableau structuré
If .Parent.ListObjects.Count = 2 Then .Parent.ListObjects(2).Delete 'RAZ
.Copy .Offset(, 4) 'copier-coller
.Offset(, 4).Sort .Columns(6), xlDescending, Header:=True 'tri décroissant
.Cells(1, 4) = "RANG"
.Parent.ListObjects(2).Resize .Offset(, 3).Resize(, 3) 'redimensionne le 2ème tableau
.Cells(2, 4) = "=RANK([@" & .Cells(1, 2) & "],[" & .Cells(1, 2) & "])" 'formule
.Columns(4).HorizontalAlignment = xlCenter 'centrage
'---permutation de colonnes (facultatif)---
.Columns(6).Cut
.Columns(5).Insert xlToRight
End With
End Sub