Tri croissant à condition

Bonjour tous le monde,

J'aimerai faire un tri croissant à l'aide d'une macro mais avec une condition.

Je m'explique, dans mon fichier les ordres de fabrication identique sont groupés. Un numéro d'opération leurs est attribué, donc mon souhait et de trier les numéros d'opération tout en gardant les ordres de fabrications similaire groupé.

Bonjour,

A tester.

Sub Trier()

Dim AireATrier As Range

    Set AireATrier = Range("A1").CurrentRegion
    With ActiveSheet
         .Sort.SortFields.Clear
         .Sort.SortFields.Add2 Key:=.Columns(1), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
         .Sort.SortFields.Add2 Key:=.Columns(2), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
        With .Sort
            .SetRange AireATrier
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
    End With
    Set AireATrier = Nothing

End Sub

Bonsoir,
Une autre procédure de tri avecc les données sous forme de tableau structuré.
Cdlt.

5tri-croissant.xlsm (19.42 Ko)
Public Sub SortData()
Dim rngData As Range
    Set rngData = Range("t_fabrication")
    If Not rngData.ListObject.DataBodyRange Is Nothing Then
        With rngData.ListObject.Sort
            .SortFields.Add Key:=rngData(0, 1), Order:=xlAscending
            .SortFields.Add Key:=rngData(0, 2), Order:=xlAscending
            .Header = xlYes
            .Apply
            .SortFields.Clear
        End With
    End If
End Sub

Merci Jean-Eric ainsi qu'Eric Kergresse pour votre aide.

Je vais essayer les deux macros.

Bonne journée,

Rechercher des sujets similaires à "tri croissant condition"