Tri automatique

Le
Didier Evanno
Bonjour à tous,

Je viens de visiter un site fort interessant "excelabo" sur lequel j'ai vu
une fonction qui m'interesse, mais que je n'arrive pas à mettre en place:

Le tri automatique dans un tableau, si quelqu'un peut m'aider, ça serait
super sympa. Voici mon exemple :
Colonne A des noms
Colonne B des notations
Colonne C le total des points
Enfin Colonne D le classement des candidats

Je n'ai pas bien compris comment saisir la formule pour que le tableau se
trie tout seul.

Par avance Grand Merci à vous.
Didier
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
LE TROLL
Le #16352291
Bonjour,

Reste à savoir sur quelle base tu fais le tri,
dans quel sens, de tête, voici un exemple:

' on peut aussi mettre une variable indicée a(i,
j, k, l) as string
dim a(nombre_colonnes,) as string
dim b(nombre_colonnes) as string
dim c(nombre_colonnes) as string
dim d(nombre_colonnes) as string
dim trans as string
dim i as long
dim j as long
for i = 1 to nb_colonnes
a(i) = colonne1
b(i) = colonne2
c(i) = colonne3
d(i) = colonne4
next i
' tri sur 1ere colonne, on peut choisir le sens,
exemple croissant :
for j = 1 to nombre_colonnes
for i = 1 to nombre_colonnes-1
if a(i) > a(i+1) then
trans = a(i+1)
a(i+1) = a(i)
a(i) = trans
trans = b(i+1)
b(i+1) = b(i)
b(i) = trans
trans = c(i+1)
c(i+1) = c(i)
c(i) = trans
trans = d(i+1)
d(i+1) = d(i)
d(i) = trans
exit for
endif
next i
next j
for i = 1 to nb_colonnes
colonne1 = a(i)
colonne2 = b(i)
colonne3 = c(i)
colonne4 = d(i)
next i
'------------------
' Mais le plus rapide est plus simple est de
passser par les listes, voire par les tableaux
SPLIT...
' Mais je ne peux pas le faire de tête, faudrait
que je teste avec le code si on passe par les
listes avec réaffectation d'index...

--
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"Didier Evanno"
dans le message de news:

| Bonjour à tous,
|
| Je viens de visiter un site fort interessant
"excelabo" sur lequel j'ai vu
| une fonction qui m'interesse, mais que je
n'arrive pas à mettre en place:
|
| Le tri automatique dans un tableau, si quelqu'un
peut m'aider, ça serait
| super sympa. Voici mon exemple :
| Colonne A des noms
| Colonne B des notations
| Colonne C le total des points
| Enfin Colonne D le classement des candidats
|
| Je n'ai pas bien compris comment saisir la
formule pour que le tableau se
| trie tout seul.
|
| Par avance Grand Merci à vous.
| Didier
|
Francois L
Le #16352521
Didier Evanno a écrit :

Bonjour,


Dans l'exemple en pièce jointe :
http://cjoint.com/?hrrr1e2RMk

une illustration fonctionnelle de l'astuce donnée par Chris V


Dans le classeur, appuyer sur F9 pour changer les valeurs de la zone
Points et constater que la colonne C est triée.

A retenir, il y a deux zones nommées utilisées ensuite dans la formule
qui est matricielle et doit être validée par Ctrl+Maj+Entrée

Reviens si besoin...

Le TROLL vient de me dire que je ne suis pas pédagogique ! tant pis, à
toi de juger lequel de nous deux est le pire.

--
François L


Bonjour à tous,

Je viens de visiter un site fort interessant "excelabo" sur lequel j'ai vu
une fonction qui m'interesse, mais que je n'arrive pas à mettre en place:

Le tri automatique dans un tableau, si quelqu'un peut m'aider, ça serait
super sympa. Voici mon exemple :
Colonne A des noms
Colonne B des notations
Colonne C le total des points
Enfin Colonne D le classement des candidats

Je n'ai pas bien compris comment saisir la formule pour que le tableau se
trie tout seul.

Par avance Grand Merci à vous.
Didier



Papyjac
Le #16357801
Bonjour Didier,

La piste de François, même si elle manque de pédagogie est interessante

Car ce que tu veux, ce n'est pas faire un tri, mais uniuqement obtenir le
rang de la personne
Dans ce cas il suffit d'utiliser la fonction =RANG(points, liste des points,
0)

Le "0" signifie par ordre décroissant : le 1er ayant obtenu un score maximum


--
P a p y j a c


"Didier Evanno" message de news:
Bonjour à tous,

Je viens de visiter un site fort interessant "excelabo" sur lequel j'ai vu
une fonction qui m'interesse, mais que je n'arrive pas à mettre en place:

Le tri automatique dans un tableau, si quelqu'un peut m'aider, ça serait
super sympa. Voici mon exemple :
Colonne A des noms
Colonne B des notations
Colonne C le total des points
Enfin Colonne D le classement des candidats

Je n'ai pas bien compris comment saisir la formule pour que le tableau se
trie tout seul.

Par avance Grand Merci à vous.
Didier




Francois L
Le #16358081
Papyjac a écrit :

Bonjour Papy,

Rendons à César... ce n'est pas ma piste mais une formule de Chris V. Je
me suis limité à faire un exemple pour que le demandeur comprenne
comment il peut l'utiliser.

Ceci étant dit, il l'a trouvée chez Misange cette formule mais il a
oublié de visiter les pages sur comment se connecter au MPFE. Résultat
comme beaucoup d'utilisateurs de CDO, il ne semble pas voir les réponses.

--
François L



Bonjour Didier,

La piste de François, même si elle manque de pédagogie est interessante

Car ce que tu veux, ce n'est pas faire un tri, mais uniuqement obtenir
le rang de la personne
Dans ce cas il suffit d'utiliser la fonction =RANG(points, liste des
points, 0)

Le "0" signifie par ordre décroissant : le 1er ayant obtenu un score
maximum




Didier Evanno
Le #16362941
Que nenni, je lis les réponses...
Mais il faut que je teste les propositions que vous m'avez gentiment faites.

en tout cas un grand merci.

"Francois L" a écrit :

Papyjac a écrit :

Bonjour Papy,

Rendons à César... ce n'est pas ma piste mais une formule de Chris V. Je
me suis limité à faire un exemple pour que le demandeur comprenne
comment il peut l'utiliser.

Ceci étant dit, il l'a trouvée chez Misange cette formule mais il a
oublié de visiter les pages sur comment se connecter au MPFE. Résultat
comme beaucoup d'utilisateurs de CDO, il ne semble pas voir les réponses.

--
François L



> Bonjour Didier,
>
> La piste de François, même si elle manque de pédagogie est interessante
>
> Car ce que tu veux, ce n'est pas faire un tri, mais uniuqement obtenir
> le rang de la personne
> Dans ce cas il suffit d'utiliser la fonction =RANG(points, liste des
> points, 0)
>
> Le "0" signifie par ordre décroissant : le 1er ayant obtenu un score
> maximum
>
>



Francois L
Le #16363281
Didier Evanno a écrit :
Que nenni, je lis les réponses...
Mais il faut que je teste les propositions que vous m'avez gentiment faites.




Bonsoir,

Alors, puisque tu connais déjà le site de Misange (excelabo), retournes
y pour voir comment suivre le forum plus confortablement qu'avec
l'interface CDO que tu utilises.

Et n'hésites pas à te manifester quand tu as des réponses... même pour
dire que ce n'est pas ce que tu espérais, ça motive ceux qui répondent
et leur permet de savoir qu'ils ne travaillent en pure perte. On est
tellement habitués (surtout chez ceux qui utilisent ce fameux CDO) à ne
jamais avoir de signe de vie de certains demandeurs...

--
François L

en tout cas un grand merci.

"Francois L" a écrit :

Papyjac a écrit :

Bonjour Papy,

Rendons à César... ce n'est pas ma piste mais une formule de Chris V. Je
me suis limité à faire un exemple pour que le demandeur comprenne
comment il peut l'utiliser.

Ceci étant dit, il l'a trouvée chez Misange cette formule mais il a
oublié de visiter les pages sur comment se connecter au MPFE. Résultat
comme beaucoup d'utilisateurs de CDO, il ne semble pas voir les réponses.

--
François L



Bonjour Didier,

La piste de François, même si elle manque de pédagogie est interessante

Car ce que tu veux, ce n'est pas faire un tri, mais uniuqement obtenir
le rang de la personne
Dans ce cas il suffit d'utiliser la fonction =RANG(points, liste des
points, 0)

Le "0" signifie par ordre décroissant : le 1er ayant obtenu un score
maximum








Publicité
Poster une réponse
Anonyme