Formule Excel: texte le plus fréquent avec des critères -

Table des matières

Formule générique

=INDEX(rng1,MODE(IF(rng2=criteria,MATCH(rng1,rng1,0))))

Sommaire

Pour rechercher le texte le plus fréquemment utilisé dans une plage, en fonction des critères que vous fournissez, vous pouvez utiliser une formule matricielle basée sur plusieurs fonctions Excel INDEX, MATCH, MODE et IF. Dans l'exemple illustré, la formule en G5 est:

=INDEX(supplier,MODE(IF(client=F5,MATCH(supplier,supplier,0))))

où "fournisseur" est la plage nommée C5: C15 et "client" est la plage nommée B5: B15.

Remarque: il s'agit d'une formule matricielle et doit être saisie avec Ctrl + Maj + Entrée.

Explication

En travaillant de l'intérieur vers l'extérieur, nous utilisons la fonction MATCH pour faire correspondre la plage de texte à elle-même, en donnant à MATCH la même plage pour la valeur de recherche et le tableau de recherche, avec zéro pour le type de correspondance:

MATCH(supplier,supplier,0)

Puisque la valeur de recherche est un tableau avec 10 valeurs, MATCH renvoie un tableau de 10 résultats:

(1;1;3;3;5;1;7;3;1;5;5)

Chaque élément de ce tableau représente la première position à laquelle un nom de fournisseur apparaît dans les données. Ce tableau est alimenté dans la fonction IF, qui est utilisée pour filtrer les résultats pour le client A uniquement:

IF(client=F5,(1;1;3;3;5;1;7;3;1;5;5))

IF renvoie le tableau filtré à la fonction MODE:

(1;FALSE;3;FALSE;5;1;FALSE;FALSE;1;5;FALSE)

Notez que seules les positions associées au client A restent dans le tableau. MODE ignore les valeurs FALSE et renvoie le nombre le plus fréquent à la fonction INDEX comme numéro de ligne:

=INDEX(supplier,1)

Enfin, avec la plage nommée «fournisseur» comme tableau, INDEX renvoie «Brown», le fournisseur le plus fréquent pour le client A.

Articles intéressants...