Un tableur est un outil incroyable. Les possibilités de création et les applications sont infinies. Encore faut-il savoir s’en servir.
Nous vous avons préparé un nouveau petit cours illustré, pour monter en compétences et impressionner vos collègues et amis. Nous vous avions déjà préparé un cours sur les recherches, voici la suite.
Les fonctions INDEX et EQUIV
Ces fonctions appartiennent toutes deux à la catégorie « Recherche ». INDEX renvoie une valeur ou la référence de la cellule au croisement d’une ligne et d’une colonne dans une plage de données. EQUIV renvoie la position de la valeur cherchée dans le tableau.
Contrairement aux fonctions RECHERCHEV et RECHERCHEH qui ne renvoient que la première donnée trouvée, les fonctions INDEX et EQUIV, utilisées ensemble, permettent d’extraire plusieurs éléments répondant à la recherche dans un tableau.
La fonction Index
On recherche des données dans une base de données client. La fonction INDEX peut renvoyer une valeur (formule matricielle) ou la référence de la cellule (formule référentielle) à l’intersection d’une ligne et d’une colonne dans une plage de cellules.
Nous avons une plage de données, nous souhaitons récupérer le téléphone d’une société ayant le numéro 6.
=INDEX(C10:E19;B4;B5)
La fonction INDEX affiche la valeur d’erreur #REF! si les arguments no_lig et no_col font référence à une cellule située en dehors du tableau.
La fonction Equiv
On recherche toujours des données dans une base de données client. La fonction EQUIV peut renvoyer la position de la cellule qui contient la valeur recherchée.
Nous avons une plage de données, nous souhaitons savoir comment la société CCAS est numérotée dans notre base.
=EQUIV(“CCAS”;A1:A10;0)
La fonction EQUIV affiche la valeur d’erreur #REF! si la recherche ne trouve pas l’expression demandée.
Concernant l’utilisation de la fonction =EQUIV(“EGF*”;A1:A10;0), l’étoile permet de se passer de l’expression entière. Vous pouvez également essayer la formule =EQUIV(“*SISSI*”;A1:A10;0) qui va vous renvoyer le numéro 1 car cette société est en première position.
Utiliser les fonctions INDEX et EQUIV ensemble
Autre cas de figure, vous devez effectuer du contrôle de gestion. Vous avez récupéré du service des ventes, les prix pratiqués pour des ventes de pièces en fonction d’un volume. Par exemple, 10 pièces de la référence REF01 se sont vendues à 6€ tandis que 20 pièces de cette même référence REF01 se sont vendues à 9€.
Vous souhaitez obtenir un système d’interrogation rapide sur l’ensemble de vos références.
Tapez la formule suivante :
=INDEX(C2:C13;EQUIV(1;(A2:A13=E6)*(B2:B13=E7);0)), puis validez-la en tapant sur Ctrl+Maj+Entrée
Voilà, votre système d’interrogation est prêt.
La reconstruction d’une base de données
Vous pouvez évidemment travailler avec de multiples recherches imbriquées pour arriver à ce résultat. Contexte : Vous avez deux bases de données, vous souhaitez les fusionner ou en créer une troisième qui réponde mieux à votre besoin actuel.
Coller cette formule :
=SI(ESTNA(INDEX($F$11:$F$15;EQUIV(INDEX($A$11:$A$15;EQUIV(C21;$B$11:$B$15;0));$E$11:$E$15;0)));””;INDEX($F$11:$F$15;EQUIV(INDEX($A$11:$A$15;EQUIV(C21;$B$11:$B$15;0));$E$11:$E$15;0)))
Et votre valeur apparaît ! La table est reconstruite.