bonjour,

j'ai un problème avec un tri de fichier ci-dessous le morceau de procédure concernée

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
22
23
24
 
       pro:='xxxx9999';
       for i:=1 to nb_lig do
       begin
            seek(fichier,i); read(fichier,enregcollec);
            tab_base[i,2]:= Trim(enregcollec.num);
       end;
 
       lig:=0;
       for i:=1 to nb_lig do
       begin
          for j:=1 to nb_lig do
          begin
           test:=tab_base[j,2];
          if test<pro then
                 begin
                  pro:=test;
                  lig:=j;
                 end;
          end;
          tab_base[lig,2]:='xxxx9999';
          seek(fichier,lig);read(fichier,enregcollec);
          tab_resu[i]:=enregcollec; pro:='xxxx9999';lig:=0;
       end;
Les éléments à trier sont comme ceci
BF100
BF12
BF10
BF08
BF09
BF11
BF101

et voici le résultat

BF08
BF09
BF10
BF100
BF101
BF11
BF12

Apparemment le tri se fait sur le premier chiffre mais je souhaite avoir ceci comme résultat

BF08
BF09
BF10
BF11
BF12
BF100
BF101

Merci de votre aide