Tri tableau sur une colonne donnée en quelques lignes de code (array sort)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 15 336 fois - Téléchargée 41 fois

Contenu du snippet

Voici une source pour trier vos tableaux

Tout le code n'est pas de moi, je l'ai repris afin d'ajouter la sélection de la colonne (k)

Je sais qu'il existe d'autre source de ce genre sur aspfr mais je trouve que ce code est suffisamment bon pour en rajouter un de plus

A vous de voir...

Source / Exemple :


function arraysort(values(),k)
    Dim i 
    Dim j 
    Dim smallest_value 
    Dim smallest_j 
    Dim min
    Dim max
    Dim temp
    
    min = lbound(values,2)
    max = ubound(values,2)
    	For i = min To max - 1
    	smallest_value = values(k,i)
    	smallest_j = i
    	For j = i + 1 To max
    		' See if values(j) is smaller. changed To strComp to work With strings.
    		if strComp(values(k,j),smallest_value,vbTextCompare) = -1 Then
    			' Save the new smallest value.
    			smallest_value = values(k,j)
    			smallest_j = j
    		End if
    		Next 'j
    		if smallest_j <> i Then
    			' Swap items i and smallest_j.
    			For intA = 0 To ubound(values,1)
    				temp = values(intA,smallest_j)
    				values(intA,smallest_j) = values(intA,i)
    				values(intA,i) = temp
    			Next 'intA
    		End if
    	Next 'i
    arraysort = values
End function

A voir également

Ajouter un commentaire

Commentaire

tmcuh
Messages postés
463
Date d'inscription
dimanche 22 décembre 2002
Statut
Membre
Dernière intervention
18 avril 2009
-
Ta source ne peut pas marcher dans un cas concret, en effet tu inverse les lignes et colonnes. On traite toujours une array en lignes/colonnes et non colonnes/lignes => values(j,k) à la place de valus(k,j).
Ce que je trouve regrettable là dedans, c'est la personne qui t'as mis 10 sans regarder le tout :s.

Amicalement,
Tmcuh

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.