En fait, à la base ma macro était la suivante :
Sub Coucou()
Dim client_tab As Range
On Error GoTo errHandler
dernier_client = Worksheets("Clients").Range("B4").End(xlDown).Address
nombre_client = Mid(dernier_client, 4) - 4
4 Set client_tab = Worksheets("Clients").Range(Worksheets("Clients").Range("B4"), Worksheets("Clients").Range(dernier_client).Offset(0, 2))
5 client_tab.Copy Destination:=Worksheets("Clients").Range("BB4")
6 Worksheets("Clients").Range(Range("BC4"), Range("BC4").Offset(nombre_client, 0)).Select
7 Worksheets("Clients").Sort.SortFields.Clear
8 Worksheets("Clients").Sort.SortFields.Add Key:=Range("BC4"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With Worksheets("Clients").Sort
.SetRange Range(Worksheets("Clients").Range("BB4"), Worksheets("Clients").Range("BB4").Offset(nombre_client, 2))
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Exit Sub
errHandler:
MsgBox "Une erreur est survenue CmdeClt, Ligne: " & Erl() & _
vbCrLf & "Numéro d'erreur: " & Err.Number & vbCrLf & Err.Description
End Sub
Et donc la ligne 6 à 8 permettent de classer un tableau par ordre alphabétique. Donc pour se faire, j'ai utilisé l'outil "enregistreur de macro"; j'ai fait ensuite copier/coller et j'ai variabilité le tout. Ça marchais au début puis j'ai du changer quelques trucs et après ça marché plus mais sans raison. En bidouillant j'ai cru comprendre que c'est la méthode "Select" de la ligne 6 qui plante mais je n'ai aucune idée du "pourquoi" =/