Tri qui ne fonctionne pas

jacky49

XLDnaute Impliqué
Bonsoir le forum,

j'ai ce code ci-dessous qui me sert à masquer des lignes et colonnes et à imprimer le tableau mais je voudrais faire un tri du plus petit au plus grand sur la colonne EO mais tous fonctionne sauf le tri.
Code:
Sub PlacementSurLaLigneCourse1(ByVal WsName As String)
Application.ScreenUpdating = False
Dim ws As Worksheet
Dim MaPlage As Range
    Set ws = Worksheets(WsName)
    Derlig = ws.Range("EL" & ws.Rows.Count).End(xlUp).Row
    Set MaPlage = ws.Range("EH1:FF" & Derlig)
Range("EO" & LigneDeTitre), Order1:=xlAscending, Header:=xlYes, _
          OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom 
Rows("2:4").Hidden = True
Columns("EM:ES").EntireColumn.Hidden = True
Columns("EU:FF").EntireColumn.Hidden = True
With ws.PageSetup
    .PrintArea = MaPlage.Address
       '.LeftFooter = ""
       .CenterFooter = "&""Times New Roman,italique""&18" & [FT8] & Chr(10) & [FW8] & " , " & [FX8] & " , " & [FY8] & "   " & [FZ8] & "  " & [GA8] & "  " & Chr(10) & [GC8]
       '.RightFooter = ""
End With
With ws.PageSetup
.PrintArea = MaPlage.Address
       '.LeftHeader = ""
       .CenterHeader = "&""Times New Roman,italique""&20" & [ET5] & Chr(10) & [EM2] & "  " & [FO8] & Chr(10) & Chr(10) & [EK3] & Chr(10) & [EI4]
        '.RightHeader = ""
End With
    ws.PrintOut Copies:=4, Collate:=True
Application.ScreenUpdating = True
End Sub

je pense que c'est cette ligne de code qui ne va pas , si quelqu'un a une idée
Code:
Range("EO" & LigneDeTitre), Order1:=xlAscending, Header:=xlYes, _
          OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

merci
jacky
 

vmatthieu

XLDnaute Occasionnel
Re : Tri qui ne fonctionne pas

bonsoir,
excuse moi par avance ma réponse à la naïveté d'un débutant que je suis...

c'est moi qui passe à coté ou la variable lignedetitre n'est pas définie ?
et quand j'enregistre une macro le range est différent (il y a un .sort )et il rajoute un key1 (d'alleurs je ne vois pas ce que cela change quand on change de cellule
Range("C1:C15").Sort Key1:=Range("C9"), Order1:=xlDescending, Header:= _
xlYes, OrderCustom:=2, MatchCase:=True, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

peux tu me rendre moins naïf?
merci d'avance
bonne soirée
 

jacky49

XLDnaute Impliqué
Re : Tri qui ne fonctionne pas

Bonjour le forum, vmatthieu,

oui tu as raison, En essayant de faire fonctionner le code, j'ai supprimer la ligne de titre et les .sort et key mais en fait j'ai fait plusieurs essais infructueux et j'ai donc recopier le code tel qu'il était à mon dernier essai.
donc je le remet tel qu'il est en réalité.
Code:
Sub PlacementSurLaLigneAmoi(ByVal WsName As String)
Application.ScreenUpdating = False
Dim ws As Worksheet
Dim MaPlage As Range
    Set ws = Worksheets(WsName)
    Derlig = ws.Range("EL" & ws.Rows.Count).End(xlUp).Row
    Set MaPlage = ws.Range("EH1:FF" & Derlig)
    Range("EM7:EM105").Sort Key1:=Range("EM7"), Order1:=xlAscending, Header:=xlGuess, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
    DataOption1:=xlSortNormal
Rows("2:4").Hidden = True
Columns("EM:EN").EntireColumn.Hidden = True
Columns("EP:FF").EntireColumn.Hidden = True

With ws.PageSetup
    .PrintArea = MaPlage.Address
       '.LeftFooter = ""
       .CenterFooter = "&""Times New Roman,italique""&18" & [FH8] & Chr(10) & [Fk8] & " , " & [Fl8] & " , " & [Fm8] & " , " & [Fn8] & "  " & [FO8] & Chr(10) & [FQ8]
       '.RightFooter = ""
End With
With ws.PageSetup
.PrintArea = MaPlage.Address
       '.LeftHeader = ""
       .CenterHeader = "&""Times New Roman,italique""&20" & [EO5] & Chr(10) & [EM2] & "  " & [FO8] & Chr(10) & Chr(10) & [EK3] & Chr(10) & [EI4]
        '.RightHeader = ""
End With
    ws.PrintOut Copies:=4, Collate:=True
Application.ScreenUpdating = True

End Sub
mais je ne vois pas pourquoi il ne fonctionne pas
merci
jacky
 

pierrejean

XLDnaute Barbatruc
Re : Tri qui ne fonctionne pas

Bonjour jacky

Peut etre en mettant ws. en tete des lignes

Code:
....
Range("EM7:EM105").Sort Key1:=Range("EM7"), Order1:=xlAscending, Header:=xlGuess, _
 OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
    DataOption1:=xlSortNormal
Rows("2:4").Hidden = True
Columns("EM:EN").EntireColumn.Hidden = True
Columns("EP:FF").EntireColumn.Hidden = True
...
 

Statistiques des forums

Discussions
312 286
Messages
2 086 807
Membres
103 392
dernier inscrit
doc_banane