Exemple d'utilisation du tri qui tue.
Vous êtes chargé d'enregistrer l'arrivée des participants à une course.
Vous notez les numéros de dossards au fur et à mesure des arrivées et souhaitez pouvoir annoncer aux athlètes avides de classement leur position s'ils viennent vous voir.
Bien entendu, ils ne veulent pas attendre que tout le monde soit là et il faut pouvoir leur dire ça sans interrompre la saisie.
Comme ils ne sont pas assez organisés pour arriver dans l'ordre des dossards, ce qui serait quand même plus pratique, tout est mélangé. Vous mettez donc au point un mécanisme qui leur permet de trouver rapidement leur numéro de dossard dans une liste triée où ils pourront consulter leur classement (provisoire tant que tout le monde n'est pas arrivé. Je précise, tellement on pense parfois que l'informatique est capable de miracles).
Vous réservez la colonne A pour la saisie des dossards.
En colonne B vous ne mettez rien, juste pour faire joli.
En C1, vous inscrivez la formule du tri qui tue :
- Code:
-
=SI(LIGNE(1:1)<=NBVAL(A:A);PETITE.VALEUR(A:A;LIGNE(1:1));"")
que vous recopiez vers le bas N fois.
En D1, vous inscrivez la formule suivante :
- Code:
-
=SI(LIGNE(1:1)<=NBVAL(A:A);EQUIV(C1;A:A;0);"")
qui permet de retrouver le rang du dossard dans la liste initiale.
Bien entendu, comme EQUIV() retrouve uniquement la première occurrence d'une valeur dans une liste, si deux participants ont le même dossard, ils se retrouvent tous les deux avec le classement du premier des deux. Mais votre manifestation est alors mal organisée et ce n'est pas Numbers qui vous rendra service.