Friday, April 08, 2016

Filtre Dynamique avec formule Excel (2)

Apres avoir montré dans mon post précédant une première manière de filtrer de manière dynamique les données en Excel, voici une deuxième méthode tout aussi simple avec d’autre fonctions Excel.
1.       Small
2.       Row
3.       Offset
Nous allons commencer par chercher les lignes qui contiennent la valeur recherchée, en utilisant une combinaison de la fonction IF et ROW 

En considérant plage, la plage contenant les lignes à filtrer et val la valeur à chercher, on aura :
IF(plage=val,ROW(plage),””)       on aura une matrice du genre {“”,””,3,4,””,””,””,””,9,””,…}

La matrice trouvée devra être évalué par la fonction SMALL de la manière suivante :
SMALL({“”,””,3,4,””,””,””,””,9,””,…},k) avec k le rang que l’on recherche.



                                                        
La formule finale sera
SMALL(IF(plage=val,ROW(plage),””),k)

 Ceci étant une formule matricielle, elle devra être validée par Ctrl+Shift+Enter

en utilisant la fonction la fonction Offset comme décrite dans mon post précédant, vous trouverez les valeurs cherchées.