Bonsoir
j'ai créer un petit programme qui remplit un tableau avec les données d'un Userform.
Lorsque toutes les données sont entrées dans le tableau, je voudrais trier le tableau par ordre croissant de la colonne D puis idem par la colonne L.
Sauf qu'il me met un message d'erreur lorsqu'il en arrive au tri...
Voici une partie de la programmation avec en rouge là où il me met le message d'erreur, si quelqu'un pourrait m'aider :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Private Sub Validez_Click()
    
    Application.ScreenUpdating = False
    If Semaine.Value > 52 Then
        informer = MsgBox("Cette semaine n'existe pas!" & (Chr(13) & Chr(10)) & "Validation impossible...", vbOKOnly)
        Exit Sub
    End If
    Unload Données
    Sheets("liste des AT ").Select
    Ligne = Range("N4").Value + Range("O3").Value
    Ligne = Ligne + 1
    ligne2 = Ligne + 5
        Range("A" & ligne2) = Unit.Value
        Range("B" & ligne2) = Semaine.Value
        Range("D" & ligne2) = Date_AT.Value
        Range("E" & ligne2) = Lieu.Value
        Range("F" & ligne2) = Circonst.Value
        Range("G" & ligne2) = Element.Value
        Range("H" & ligne2) = Lesions.Value
        Range("K" & ligne2) = Age.Value
        Range("L" & ligne2) = Heure_AT.Value
        Range("M" & ligne2) = Service.Value
        Range("N" & ligne2) = Prevention.Value
        Range("O" & ligne2) = Actions.Value
    
    If Acc_trav.Value = True Then
        Range("C" & ligne2) = "AT"
        Range("I" & ligne2) = jour_arret_trav.Value
        Range("J" & ligne2) = ""
        Else
        If Acc_traj.Value = True Then
            Range("C" & ligne2) = "AJ"
            Range("I" & ligne2) = ""
            Range("J" & ligne2) = jour_arret_traj.Value
        End If
    End If
    
    Initialize.Show
    Range("N4") = Ligne
    Ligne = Range("N4").Value - Range("O3").Value
    Range("N4") = Ligne
    Range("A" & ligne2).Select
    
    Call initialise_Acc
    
    Rows("6:87").Select
    Selection.Sort Key1:=Range("D6"), Order1:=xlAscending, Key2:=Range("L6") _
        , Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
        False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, _
        DataOption2:=xlSortNormal    
Range("A6").Select
    
    Application.ScreenUpdating = True

End Sub
Merci d'avance

Le message d'erreur est
la méthode Sort de la classe Range à échoué
Je ne comprends pas...