Bonjour,
Mon appli utilise un TStringlist dont voici un extrait:
...
LFPG - 047 NM - 08L - 2134 m - 070°(T)
LFPG - 047 NM - 26R - 2134 m - 070°(T)
LFPO - 154 NM - 16 - 3250 m - 210°(T)
LFPO - 154 NM - 23 - 2650 m - 210°(T)
LFPB - 047 NM - 07 - 3000 m - 078°(T)
...
Je trie cette liste sur la "colonne" qui contient XXX NM. Mais ce tri me donne:
...
LFPG - 047 NM - 08L - 2134 m - 070°(T)
LFPB - 047 NM - 07 - 3000 m - 078°(T)
LFPG - 047 NM - 26R - 2134 m - 070°(T)
LFPO - 154 NM - 16 - 3250 m - 210°(T)
LFPO - 154 NM - 23 - 2650 m - 210°(T)
...
J'utilise la fonction CustomSort qui appelle la fonction:
Je souhaiterais regrouper la première colonne pour obtenir:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 function CompareInt(List: TStringList; Index1, Index2: Integer): Integer; var lsStr1, lsStr2: string; begin lsStr1 := Copy(List[Index1], 8, 3); lsStr2 := Copy(List[Index2], 8, 3); Result := AnsiCompareText(lsStr1, lsStr2); end;
...
LFPB - 047 NM - 07 - 3000 m - 078°(T)
LFPG - 047 NM - 08L - 2134 m - 070°(T)
LFPG - 047 NM - 26R - 2134 m - 070°(T)
LFPO - 154 NM - 16 - 3250 m - 210°(T)
LFPO - 154 NM - 23 - 2650 m - 210°(T)
...
Comment pourrais obtenir le tri souhaiter?
Merci de votre aide
Cordialement
Pierre
Partager