Bonjour,
J'ai un problème de tri, en vba, avec une erreur 1004 récalcitrante.
Le tri s'effectue sur une zone nommée, par exemple "zone_test". Le nombre de lignes de la zone, qui est définie par la formule DECALER, peut varier, mais démarre toujours à la ligne 9 (jamais avant). Le tri doit s'effectuer, non sur cette zone, mais sur les lignes de cette zone.
J'ai donc débuté ma macro ainsi:
J'ai essayé de changer AO1 par AO, ainsi que AQ1 par AQ et J1 par J, mais cela ne change rien. J'ai toujours une erreur 1004.
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 Application.ScreenUpdating = False Application.EnableEvents = False ActiveSheet.Unprotect Dim ws As Worksheet Dim lignes As Range Set ws = ThisWorkbook.Worksheets(1) Set lignes = ws.Range("zone_test").Rows With lignes .Sort Key1:=Range("AO1"), Key2:=Range("AQ1"), Key3:=Range("J1"), Header:=xlNo, _ Order1:=xlDescending, Order2:=xlAscending, Order3:=xlAscending End With
Et la feuille est bien déprotégée avant le tri.
Quand à la zone nommée, elle définit le nombre de lignes où se trouvent des valeurs (par exemple, J9:j32). Dans ce cas, lignes devrait sélectionner les lignes 9 à 32.
D'où vient l'erreur?
Partager