Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

classement tableau

grodep

XLDnaute Occasionnel
Re bonjour à tous,
voilà, pour classer un tableau regroupant des noms et les notes qu'ils ont obtenues à différents tests, je n'ai pas trouvé mieux que de procéder en plusieurs étapes: en effet, a ce qu'il me semble, pour que la formule rechercheV(grandevaleur....) fonctionne, il faut que la colonne sur laquelle s'applique "grandevaleur" soit située avant la colonne sur laquelle s'effectue ensuite "rechercheV" .
Du coup, dans un premier temps, j'ai collé la colonne moyenne dans la colonne située avant celle des noms(c'est pas tres joli), et ensuite j'ai appliqué ma formule rechercheV(grandevaleur(patincoufin..) sur celle ci afin d'avoir dans une autre colonne la liste des noms classées par ordre décroissant de leur moyenne.
a coté de cette colonne se trouvent les cellules remplies avec leur "place" dans le classement, et je copie colle enfin cette place dans une autre colonne.

Bref, c'est pas très joli, et j'aimerai vos lumières pour améliorer tout ça .

NB: je ne veux pas utiliser la fonction tri directement sur mon tableau car je souhaite garder la liste des noms dans l'ordre alphabétique( bien pratique pour rentrer les résultats des tests)
NB: ne soyez pas surpris du nom des personnes et des tests, pour des raisons évidentes d'anonymat, ceux ci ont été remplacés
 

Pièces jointes

  • Classeurmoy.xls
    33.5 KB · Affichages: 74
  • Classeurmoy.xls
    33.5 KB · Affichages: 69
  • Classeurmoy.xls
    33.5 KB · Affichages: 59

Jiheme

XLDnaute Accro
Re : classement tableau

Bonjour Grodep, le Forum

Avec une macro de tri (enregistrée) et un bouton.

Regarde et dis nous

A+
 

Pièces jointes

  • Classeurmoy V1.0.zip
    15.4 KB · Affichages: 36

Excel-lent

XLDnaute Barbatruc
Re : classement tableau

Bonjour Grodep,

Le fichier ci-joint répond à tes attentes?

Comme demandé, je n'ai pas touché à ton tableau initial où les élèves sont triés par ordre alphabétique.

Si besoin d'explication plus poussé, n'hésite pas.

A te lire.

Bonne journée

Edition : Bonjour Jiheme, pas vus
 

Pièces jointes

  • Classeurmoy.xls
    43.5 KB · Affichages: 69
  • Classeurmoy.xls
    43.5 KB · Affichages: 69
  • Classeurmoy.xls
    43.5 KB · Affichages: 72
Dernière édition:

Cousinhub

XLDnaute Barbatruc
Re : classement tableau

Bonjour,

Bonjour, JM

regarde le fichier joint..

Edit, changé le fichier, formule un peu plus simple....
 

Pièces jointes

  • Classeurmoy_v1.xls
    32.5 KB · Affichages: 60
Dernière édition:

Jiheme

XLDnaute Accro
Re : classement tableau

Bonjour Excel-lent, BH² re à tous

Merci Excel-lent pour ta remarque sur l'ordre alpha, pour une fois que j'avais une solution à proposer je me suis emballé.

Mais sur ma proposition, il suffit de rajouter un bouton qui refait le tri en alpha...

A+
 

Excel-lent

XLDnaute Barbatruc
Re : classement tableau

Bonjour BHBH, Jiheme,

Jiheme à dit:
pour une fois que j'avais une solution à proposer

Faut pas dire ça! Je te vois souvent donner un coup de main!

C 'est clair, ta macro à le mérite d'être plus simple, plus facile à comprendre!

Si ta solution convient à Grodep, l'idéal serait de remplacer ta macro :
Code:
Sub class()
' Macro enregistrée par Jiheme

    Range("G21:P[COLOR="Blue"][B]41[/B][/COLOR]").Select
    Selection.Sort Key1:=Range("P21"), Order1:=xlDescending, Header:=xlGuess _
        , OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub

Par :
Code:
Sub class()
' Macro enregistrée par Jiheme

    Range("G21:P" & [COLOR="Blue"][B][G65536].End(xlUp).Row[/B][/COLOR] ).Select
    Selection.Sort Key1:=Range("P21"), Order1:=xlDescending, Header:=xlGuess _
        , OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub

Permettant ainsi à ta macro de s'adapter automatiquement à la hauteur du tableau, car peut-être qu'il n'aura pas toujours le même nombre de ligne!

Bonne après midi
 

grodep

XLDnaute Occasionnel
Re : classement tableau

Un énorme merci à tous, je ne pensais pas soulever autant d'enthousiasme sur ce post !
je suis encore dans la phase d'étude de vos solutions afin d'ancrer dans mon crane de piaf les formules et codes que vous me proposez.
Je suis assez scotché par la fonction rang et par sa simplicité, je ne savais meme pas qu'on pouvait faire aussi simple . D'autant que contrairement à la fonction grandevaleur, la fonction rang s'affranchit des valeurs égales(plus besoin de rajouter +ligne()/100000 pour différencier les moyennes! )

Encore merci à tous les intervenants
 

kjin

XLDnaute Barbatruc
Re : classement tableau

Re, bonjour hoerwind
La formule en S21 peut être raccourcie comme suit...
Tout à fait d'accord
L'inconvénient des 2 solutions, est qu'elle ne permettent pas de prendre en compte l'insertion ou la suppression de lignes
Donc celle-ci fonctionne dans tous les cas
Code:
=INDEX($G$21:$G$41;EQUIV(LIGNE()-LIGNE($S$21)+1;$Q$21:$Q$41;0))
A+
kjin
 

grodep

XLDnaute Occasionnel
Re : classement tableau

effectivement il ne fallait pas rater le probleme de l'insertion de lignes supplémentaires
en ce qui me concerne, le probleme est reglé d'office puisque les cellules sont remplies(avec la formule kjin) par une macro incluant en variable le nombre de lignes :
Code:
Selection.FormulaR1C1 = "=IF(COUNTA(RC[-11]:RC[-4])<>0,INDEX(R2C2:R" & fn & "C2,MATCH(ROW()-1,R2C12:R" & fn & "C12,0)),"""")"

encore merci
 

Discussions similaires

Réponses
4
Affichages
266
Réponses
4
Affichages
391
Réponses
0
Affichages
149
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…