Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Trier sur plusieurs colonnes par fonction
Nous poursuivons l'apprentissage et la découverte de la
fonction Excel Trier. Nous le savons, son deuxième argument permet de désigner la colonne à utiliser pour définir l'
ordre de tri. Mais nous allons le voir, grâce à une
astuce matricielle, il est possible de définir non seulement
plusieurs colonnes à exploiter comme
index de tris mais aussi pour chacune, les
ordres respectifs.
C'est ce que démontre le résultat illustré par la capture. Les données du tableau de gauche sont réorganisées dans un second tableau sur la droite, mais en respectant des critères bien précis. Les informations sont d'abord triées dans l'
ordre décroissant (Du plus grand au plus petit) sur la
colonne des scores, la troisième. En cas d'égalité, la différence se fait alors sur la
colonne des essais réalisés pour obtenir ce score. Il s'agit de la cinquième colonne et cette fois l'organisation est
croissante (Du plus petit au plus grand). En cas de nouvelle égalité, le départage se fait en fonction de la
date de naissance, dans l'
ordre décroissant de nouveau (Du plus jeune au plus ancien). C'est d'ailleurs ce qu'illustrent parfaitement les zones bleues et vertes sur la capture.
Classeur Excel à télécharger
Pour la démonstration de la technique, nous suggérons d'appuyer l'étude sur un
classeur Excel offrant ce
tableau des données à réorganiser.
Nous retrouvons le tableau de la présentation entre les colonnes B et F. Il est à réorganiser dans la grille vide prévue à cet effet, placée sur sa droite, entre les colonnes H et L.
Initier le tri
C'est donc la
fonction Excel Trier que nous devons engager sur le tableau à réorganiser. Si vous déployez la
zone nom, en haut à gauche de la feuille, vous constatez qu'il est reconnu sous l'intitulé
tab.
- Cliquer sur la première cellule de la grille vide pour sélectionner la case H4,
- Taper le symbole égal (=) pour initier la formule matricielle,
- Inscrire le nom de la fonction de tri, suivi d'une parenthèse, soit : Trier(,
- Désigner le tableau à réorganiser par son nom, soit : tab,
- Puis, taper un point-virgule (;) pour passer dans l'argument de la colonne clé,
Les colonnes de tri
C'est là que nous devons dégainer une
astuce matricielle à l'intérieur même d'une
fonction matricielle. Il n'est pas question de considérer
une seule colonne clé, mais
trois à la fois et dans un ordre très précis, comme nous l'avons expliqué et démontré en préambule. Dans l'ordre, les colonnes à considérer sont celles des
scores, des
essais et des
dates de naissance. Elles sont respectivement placées en
troisième,
cinquième et
deuxième positions dans le tableau à trier. C'est ainsi que nous devons les énumérer à l'aide d'une
matrice horizontale de chiffres. Et comme nous l'avons appris à de maintes occasions, dans une
matrice horizontale, c'est le
symbole du point (.) qui doit être utilisé comme séparateur entre tous ces indices.
- Entre accolades, désigner les numéros de ces colonnes dans l'ordre, comme suit : {3.5.2},
- Puis, taper un point-virgule (;) pour passer dans l'argument de l'ordre de tri,
Les ordres de tri
Naturellement, il ne s'agit pas d'un seul ordre mais de trois ordres respectifs sur les trois colonnes engagées pour les tris. L'organisation doit prioritairement être établie de façon
décroissante sur la
colonne des scores, la troisième. Un
tri décroissant se signifie par la
valeur -1. En cas d'égalité, la différence doit se faire sur les essais. Et c'est une
organisation croissante (Du plus petit au plus grand) qui est attendue sur cette deuxième clé. Un
tri croissant se signifie par le
chiffre 1. En cas de nouvelle égalité, le départage doit se faire sur la
date de naissance (Colonne 2), dans l'
ordre décroissant (Du plus jeune au plus ancien). Comme précédemment, nous devons énumérer ces valeurs de tris dans une
matrice horizontale.
- Construire la matrice des ordres de tris, comme suit : {-1.1.-1},
- Fermer la parenthèse de la fonction Trier,
- Puis, valider la formule matricielle par la touche Entrée du clavier,
Vous avez le plaisir de constater que tous les candidats sont automatiquement réorganisés du plus grand au plus petit score. En cas d'égalité sur le score, un deuxième tri est effectué du plus petit nombre au plus grand nombre d'essais tentés pour atteindre ce score. Et lorsque les scores et les essais sont identiques, les candidats sont départagés en partant du plus jeune pour rejoindre le plus ancien (Tri décroissant sur la date).
Repérer les égalités
Pour finir, si vous souhaitez faire ressortir les
doubles équivalences sur les
scores et les
essais en vert par exemple et les
simples égalités sur les
scores, en bleu par exemple, ce sont
deux règles de mise en forme conditionnelle qui doivent être bâties, sur la plage du tableau résultant. La première doit vérifier en même temps que le score et les essais de la ligne en cours d'analyse sont équivalents à ceux de la ligne du dessous ou qu'ils sont équivalents à ceux de la ligne du dessus, selon la syntaxe suivante :
=OU(ET($J4=$J5; $L4=$L5); ET($J4=$J3; $L4=$L3))
Attention à l'emploi judicieux des références absolues ($) pour bloquer les colonnes.
La seconde, en bleu, est plus simple. Elle doit simplement vérifier l'égalité sur les scores avec la ligne du dessous ou avec la ligne du dessus, selon la syntaxe suivante :
=OU($J4=$J5; $J4=$J3)