Correction d’une erreur #N/A dans la fonction RECHERCHEV

Cette rubrique décrit les raisons RECHERCHEV les plus fréquentes d’un résultat incorrect de la fonction et fournit des suggestions d’utilisation de la fonction index et EQUIV à la place.

Conseil : Pour en savoir plus, reportez-vous à l’aide- mémoire : conseils de dépannage de RECHERCHEV qui présentent les principales raisons de #NA problèmes dans un fichier PDF pratique. Vous pouvez partager le fichier PDF avec d’autres personnes ou l’imprimer pour consultation ultérieure.

Problème : La valeur de recherche ne figure pas dans la première colonne de l’argument table_matrice

Une contrainte de RECHERCHEV est qu’elle peut uniquement chercher des valeurs dans la colonne la plus à gauche de la matrice de table. Si votre valeur de recherche ne figure pas dans la première colonne de la matrice, le #N erreur/A s’affiche.

Dans le tableau suivant, nous voulons récupérer le nombre d’unités vendues pour le produit Chou kale.

Erreur #NA dans la fonction RECHERCHEV : La valeur de recherche n’est pas dans la première colonne de la table matrice

L’erreur #N/A est due à la recherche de la valeur « Kale » dans la deuxième colonne (produit) de l’argument table_array a2 : C10. Dans ce cas, Excel recherche celle-ci dans la colonne A, pas dans la colonne B.

Solution: vous pouvez essayer de résoudre ce problème en ajustant votre RECHERCHEV de manière à référencer la colonne appropriée. Si ce n’est pas possible, essayez de déplacer vos colonnes. Cela peut également être très irréalisable, si vous avez des feuilles de calcul volumineuses ou complexes dans lesquelles les valeurs de cellule sont des résultats d’autres calculs, ou peut-être d’autres raisons logiques pour lesquelles il n’est pas possible de déplacer les colonnes. La solution consiste à utiliser une combinaison des fonctions INDEX et EQUIV, qui peut rechercher une valeur dans une colonne quelle que soit sa position d’emplacement dans la table de choix. Voir la section suivante.

Utiliser INDEX/EQUIV à la place

Les fonctions index et EQUIV constituent de bonnes options pour de nombreux cas où RECHERCHEV ne répond pas à vos besoins. Le principal avantage de l’INDEX/EQUIV réside dans le fait que vous pouvez rechercher une valeur dans une colonne de n’importe quel emplacement de la table de choix. INDEX renvoie une valeur à partir d’une table ou d’une plage spécifiée, en fonction de sa position. EQUIV renvoie la position relative d’une valeur d’une table/plage. Utilisez les fonctions INDEX et EQUIV dans une formule pour rechercher une valeur dans une table/matrice en spécifiant la position relative de la valeur dans le tableau/tableau.

Il existe plusieurs avantages liés à l’utilisation des fonctions INDEX/EQUIV au lieu de RECHERCHEV :

  • Avec les fonctions INDEX et EQUIV, la valeur de retour ne doit pas être dans la même colonne que la colonne de recherche. Cette fonction est différente de la fonction RECHERCHEV, qui doit contenir la valeur de retour dans la plage spécifiée. Comme cela se produit-il ? Avec la fonction RECHERCHEV, vous devez connaître le numéro de la colonne qui contient la valeur de retour. Même s’il n’y a pas de problème, il peut être difficile d’avoir un tableau volumineux et de compter le nombre de colonnes. Par ailleurs, si vous ajoutez ou supprimez une colonne dans votre tableau, vous devez recompter et mettre à jour l’argument Col_index_num . Avec les fonctions INDEX et EQUIV, aucun comptage n’est nécessaire car la colonne de recherche est différente de la colonne qui contient la valeur de retour.

  • Avec les fonctions INDEX et EQUIV, vous pouvez spécifier une ligne ou une colonne dans un tableau, ou spécifier les deux. Cela signifie que vous pouvez rechercher des valeurs horizontalement et verticalement.

  • INDEX et EQUIV permettent de rechercher des valeurs dans une colonne quelconque. À la différence de la fonction RECHERCHEV, dans laquelle vous pouvez uniquement Rechercher une valeur dans la première colonne d’une table — les fonctions INDEX et EQUIV fonctionneront si votre valeur de recherche se trouve dans la première colonne, la dernière, ou n’importe où entre.

  • Les fonctions INDEX et EQUIV permettent de créer une référence dynamique à la colonne qui contient la valeur de retour.Cela signifie que vous pouvez ajouter des colonnes à votre tableau sans interrompre l’INDEX et la correspondance. En revanche, RECHERCHEV s’interrompt si vous avez besoin d’ajouter une colonne à la table, car elle crée une référence statique à la table.

  • Les fonctions INDEX et EQUIV offrent une plus grande flexibilité dans les résultats.Les fonctions INDEX et EQUIV peuvent trouver une correspondance exacte ou une valeur supérieure ou inférieure à la valeur recherchée. RECHERCHEV recherche uniquement une correspondance la plus proche d’une valeur (par défaut) ou une valeur exacte. RECHERCHEV suppose également par défaut que la première colonne de la matrice est triée par ordre alphabétique ; par exemple, si votre tableau n’est pas trié ainsi, RECHERCHEV renvoie la première correspondance la plus proche, qui peut être différente des données que vous recherchez.

Syntaxe

Pour créer une syntaxe pour les fonctions INDEX/EQUIV, vous devez utiliser l’argument matrice/référence de la fonction INDEX et imbriquer la syntaxe correspondante à l’intérieur de celle-ci. Voici la formule :

=INDEX(matrice ou référence, MATCH(valeur-cherchée,matrice_recherche,[type])

Nous allons utiliser les fonctions INDEX/EQUIV pour remplacer RECHERCHEV dans l’exemple ci-dessus. La syntaxe se présente comme suit :

=INDEX(C2:C10,EQUIV(B13,B2:B10,0))

Cela signifie ce qui suit :

= INDEX (renvoyez une valeur à partir de C2 : C10, qui correspond à (Kale, qui se trouve quelque part dans le tableau B2 : B10, où la valeur renvoyée est la première valeur correspondant à Kale))

Les fonctions INDEX et EQUIV peuvent être utilisées à la place de la fonction RECHERCHEV

La formule recherche la première valeur dans la plage C2:C10 qui correspond à Kale (en B7) et renvoie la valeur de la cellule C7 (100), c’est-à-dire, la première valeur qui correspond à Kale.

Problème : La correspondance exacte n’est pas trouvée.

Lorsque l’argument range_lookup est faux et que RECHERCHEV ne parvient pas à trouver une correspondance exacte dans vos données, il renvoie l’erreur #N/a.

Solution: Si vous êtes sûr que les données pertinentes existent dans votre feuille de calcul et que la fonction RECHERCHEV ne le détecte pas, prenez du temps pour vérifier que les cellules référencées ne comportent pas d’espaces masqués ou de caractères non imprimables. Assurez-vous également que les cellules respectent le type de données approprié. Par exemple, les cellules contenant des nombres doivent être mises en forme en tant que nombreet non en tant que texte.

Par ailleurs, vous pouvez utiliser la fonction EPURAGE ou SUPPRESPACE pour nettoyer les données dans les cellules.

Problème : La valeur de recherche est inférieure à la plus petite valeur dans la matrice

Si l’argument range_lookup est défini sur true, et que la valeur de recherche est inférieure à la plus petite valeur dans le tableau, vous verrez le #N erreur/a. VRAI recherche une occurrence approximative dans la matrice et renvoie la valeur la plus proche inférieure à la valeur de recherche.

Dans l’exemple suivant, la valeur de recherche est 100 mais aucune valeur n’est inférieure à 100 dans la plageB2:C10, ce qui renvoie l’erreur.

Erreur N/A dans la fonction RECHERCHEV lorsque la valeur de recherche est inférieure à la plus petite valeur dans la matrice

Solution :

  • Corrigez la valeur de recherche.

  • Si vous ne pouvez pas modifier la valeur de recherche et avoir besoin d’une plus grande souplesse avec les valeurs correspondantes, envisagez d’utiliser INDEX/MATCH au lieu de RECHERCHEV (voir la section ci-dessus). INDEX/EQUIV permettent de rechercher des valeurs supérieures, inférieures ou égales à la valeur de recherche. Pour plus d’informations sur l’utilisation d’INDEX/MATCH à la place de RECHERCHEV, reportez-vous à la section précédente dans cette rubrique.

Problème : La colonne de recherche n’est pas triée dans l’ordre croissant

Si l’argument range_lookup est défini sur true et que l’une des colonnes de recherche n’est pas triée dans l’ordre croissant (de A à Z), vous verrez l’erreur #N/a.

Solution :

  • Modifiez la fonction RECHERCHEV afin de rechercher une équivalence exacte. Pour ce faire, définissez l’argument valeur_proche sur FAUX. Il n’est pas nécessaire de trier pour FALSe.

  • Utilisez les fonctions INDEX/EQUIV pour rechercher une valeur dans un tableau non trié.

Problème : La valeur est un grand nombre à virgule flottante.

Si les cellules comportent des valeurs horaires ou un grand nombre de décimales, Excel renvoie l’erreur #N/A en raison de la précision de la virgule flottante. Les nombres à virgule flottante sont des nombres qui suivent une décimale. (Excel enregistre les valeurs d’heure sous forme de nombres à virgule flottante.) Dans la plupart du temps, Excel ne peut pas stocker de nombres à virgule flottante, de sorte que la fonction puisse fonctionner correctement, et les nombres à virgule flottante doivent être arrondis à la valeur de 5 décimales.

Solution : Raccourcissez les nombres en les arrondissant à la cinquième position décimale avec la fonction ARRONDI.

Vous avez une question sur une fonction en particulier ?

Posez une question sur le forum de la communauté Excel

Contribuer à l’amélioration d’Excel

Avez-vous des suggestions sur la manière dont nous pouvons améliorer la prochaine version d’Excel ? Si c’est le cas, consultez les rubriques du forum User Voice sur Excel.

Voir aussi

Remarque :  Cette page a été traduite automatiquement et peut donc contenir des erreurs grammaticales ou des imprécisions. Notre objectif est de faire en sorte que ce contenu vous soit utile. Pouvez vous nous dire si les informations vous ont été utiles ? Voici l’article en anglais pour référence.

Développez vos compétences dans Office
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×