La énième occurrence, en direct
Dans
l’article précédent, nous avons vu comment trouver la première occurrence, puis
la seconde, puis la troisième.. à partir des positions des occurrences
précédentes.
Parfois,
on souhaite accéder directement à la troisième occurrence, ou à la septième,
sans pour autant passer par les occurrences précédentes. Nous allons voir
aujourd’hui comment atteindre cet objectif. Vous pouvez voir ce que cela donne
dans le bloc D5:E10.
Nous
entrons en colonne E le numéro de l’occurrence souhaitée et obtenons en colonne
D le numéro de la ligne concernée. Mais ici chacune des formules de D5 à F10
est indépendante et autonome.
La
formule de D5 est :
=sierreur(petite.valeur(si($A$1:$A$21=$D$1;ligne($A$1:$A$21));E7);"")
=sierreur(petite.valeur(si($A$1:$A$21=$D$1;ligne($A$1:$A$21));E7);"")
Cette
formule est matricielle, donc validée avec
[Ctrl]-[Maj]-[Entrée].
Pour
comprendre cette formule, il suffit de voir que :
si($A$1:$A$21=$D$1;ligne($A$1:$A$21))
Donne
le résultat suivant :
{FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;
FAUX;15;FAUX;FAUX;18;FAUX;FAUX;21}
FAUX;15;FAUX;FAUX;18;FAUX;FAUX;21}
On
cherche alors la énième plus petite valeur et, comme les FAUX ne comptent pas
dans cette recherche, on trouve bien la énième occurrence de la valeur
recherchée.
0 Commentaire(s):
Enregistrer un commentaire
<< Accueil