Bonjour,

Je souhaiterais trier une liste en fonction d'une valeur d'une liste imbriquée.
J'ai une liste "Nomenclature" qui est une list(Of List(Of String))

La liste imbriquée est composé de 2 colonnes: Désignation et Longueur
La Nomenclature est composé de plusieurs "lignes".

J'aimerais trier ma nomenclature en fonction de la seconde colonne (la longueur), le soucis c'est qu'avec sort() je ne sais pas comment m'y prendre. J'arrive à le faire sur une liste simple, mais dans mon cas je ne vois pas comment selectionner ma colonne longueur

Initialement j'avais fait ça:

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
 
           Do While ListNomenclatureTriée.Count <> ListNomenclature.Count 'Loop Tant que le nombre de barre triées et différent du nombre de barre initial
           For i As Integer = 0 To ListNomenclature.Count - 1
                Dim BomRowLigne As List(of String) = ListNomenclature.Item(i)
                Dim LongueurBrute As String = BomRowLigne.Item(2)
                LongueurBrute = Left(LongueurBrute, Len(LongueurBrute) - 2) 'Suppression des "mm"
                LongueurBrute = Replace(LongueurBrute, ",", "")    'Suppression Virgule
                LongueurBrute = LongueurBrute / 10               'Mise en mm
                Dim LongueurActuelle As Double = Convert.ToDouble(LongueurBrute)
                If LongueurActuelle > PlusGrandeLongueur And LongueurActuelle < DerniereLongeurInscrite Then
                    PlusGrandeLongueur = LongueurActuelle
                    PlusGrandeLongueurIndex = i
                End If
            Next
            If PlusGrandeLongueur <= DerniereLongeurInscrite Then
                LigneAAjouter = ListNomenclature.Item(2)
                ListNomenclatureTriée.Add(LigneAAjouter)
                DerniereLongeurInscrite = PlusGrandeLongueur
                PlusGrandeLongueur = 0
            End If
        Loop
Ce code marche bien sauf quand j'ai plusieurs lignes avec la même longueur, chose qui peut arriver...
Merci d'avance pour les pistes ;-)