Bonjour
Essaye de comprendre l'ensemble en sélectionnant la formule, puis en passant par Formule --> Évaluation de formule. Cela donne cela :
SI(C$2:C$16;LIGNE($2:$16);0)
Dans C$2:C$16, tu n'as que des 0 et des 1, ce qui équivaut pour Excel à des FAUX et des VRAI. Seuls les 1 m'intéressent. Dans ce cas, Excel, renvoie le n° de la ligne correspondante.
Dans INDEX(A$1:A$16&B$1:B$16;MAX(SI(A$2:A$16&B$2:B$16=J2&K2;LIGNE(A$2:A$16)))+1) regardons la partie SI(A$2:A$16&B$2:B$16=J2&K2;LIGNE(A$2:A$16))
Dans ce cas, Excel renvoie aussi les n° de lignes contenant J2&K2 dans la concaténation des colonnes A et B.
On prend le MAX de ces n° de lignes (Autrement dit, on veut connaitre le n° de la dernière ligne contenant J2&K2 dans la concaténation des colonnes A et B).
On ajoute 1 à ce MAX, car les valeurs qui nous intéressent ne sont pas sur cette dernière ligne contenant J2&K2, mais sur les suivantes (Ce qui signifie que la formule ne fonctionne que si les données sont classées comme dans ton fichier exemple). Si on a domaine sous domaine, on cherche la position des 1&a qui se trouve forcément en dessous. Si on a 1&a, on cherche 1&b qui se trouve forcément en dessous. De plus, INDEX(...,0) poserait problème.
ce qui nous donne ici "domaine sous domaine". On a donc
...
Autrement dit, en simplifiant, la méthode consiste a trouver le n° de la ligne contenant un 1 en colonne C (les lignes avec des domaines sous domaines ayant un 0 en colonne C ne nous intéressent pas), juste après la dernière ligne contenant J2&K2 en concaténant les colonnes A et B.
@ plus
P.S : C'est peut-être plus compréhensible en analysant les résultats intermédiaires obtenus avec la formule dans J4, plutôt que J3.
On a dans J3, 1, et dans K3, a.
On cherche le dernier 1&a dans A&B. On le trouve ligne 4. Il faut donc que la formule nous renvoie la première ligne contenant un 1 en colonne C, supérieure ou égale à 5.