ce bout de code m'a servi à classer par ordre alphabétique le contenu d'un tableau, le classement s'effectuant sur les deux premières lettre du contenu de la (i,2).
Ex : le passant après la ds le tableau final.
je lis la ligne, la compare à la suivante, si la comparaison révèle qu'elle doit être classée après alphabetiquement, alors je remplace la ligne par celle-ci. et ainsi de suite...
je me sers du code ascii, des lettres pour comparer, le A ayant un code ascii inférieur au B ds la table ascii.
le tableau possède 'compt' lignes et 8 colonnes.
la variable ordre stocke la colonne du tableau sur laquelle va s'effectuer le tri
Ex : (i,1) --> l'identifiant
(i,2) --> le titre
(i,3)--> le nom
Source / Exemple :
Public Function lance_tri(ordre)
Dim vala, valb, valc, vald
dim i, j, k
dim tempv()
redim tempv(1,8)
For i = 1 To compt
For k = i To compt
If Asc(Left(table_bd(i, ordre), 1)) > Asc(Left(table_bd(k, ordre), 1)) Then
For j = 1 To 8
tempv(1, j) = table_bd(i, j)
Next
For j = 1 To 8
table_bd(i, j) = table_bd(k, j)
Next
For j = 1 To 8
table_bd(k, j) = tempv(1, j)
Next
ElseIf Asc(Left(table_bd(i, ordre), 1)) = Asc(Left(table_bd(k, ordre), 1)) And Asc(Mid(table_bd(i, ordre), 2, 1)) > Asc(Mid(table_bd(k, ordre), 2, 1)) Then
For j = 1 To 8
tempv(1, j) = table_bd(i, j)
Next
For j = 1 To 8
table_bd(i, j) = table_bd(k, j)
Next
For j = 1 To 8
table_bd(k, j) = tempv(1, j)
Next
End If
Next
Next
end function
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.