ElyxAI

Erreur #N/A dans RECHERCHEX : comment la corriger

#N/A
+RECHERCHEX

RECHERCHEX est une formule puissante pour chercher des valeurs, mais elle génère régulièrement l'erreur #N/A. Pourquoi ? Parce que la valeur que vous recherchez n'existe tout simplement pas dans la matrice de recherche. C'est le cas le plus fréquent, mais loin d'être le seul. Des espaces superflus, des majuscules/minuscules différentes, des types de données incompatibles ou une matrice mal définie peuvent aussi déclencher cette erreur. La bonne nouvelle : c'est un problème extrêmement courant et facile à résoudre. Dans cet article, nous explorons les causes réelles de #N/A avec RECHERCHEX et vous montrons comment les identifier et les corriger en quelques minutes. Des solutions concrètes pour que votre formule fonctionne enfin.

Pourquoi RECHERCHEX cause #N/A

Valeur cherchée introuvable dans la matrice de recherche

La valeur_cherchée n'existe pas dans matrice_recherche et aucun paramètre si_non_trouvé n'est défini. RECHERCHEX retourne #N/A par défaut quand aucune correspondance n'est trouvée.

=RECHERCHEX("Client_XYZ";A2:A100;B2:B100) où 'Client_XYZ' n'existe pas dans A2:A100

Mode de correspondance incompatible avec les données

Vous utilisez mode_correspondance=0 (correspondance exacte) ou -1 (exact ou prochaine valeur inférieure) alors que la valeur n'existe pas et aucune valeur inférieure n'existe. Les données doivent être triées pour mode_correspondance=-1 ou 1.

=RECHERCHEX(150;A2:A100;B2:B100;;-1) où la matrice A2:A100 n'est pas triée ou ne contient pas de valeur ≤150

Plages matrice_recherche et matrice_renvoi mal alignées

Si matrice_recherche et matrice_renvoi ont des dimensions différentes ou si la matrice_renvoi est vide/invalide, RECHERCHEX peut retourner #N/A. RECHERCHEX est sensible à la cohérence structurelle des plages.

=RECHERCHEX("Nom";A2:A100;C2:D50) où les deux plages n'ont pas le même nombre de lignes (99 vs 49)

Solution pas à pas

  1. 1Cliquez sur la cellule affichant #N/A et appuyez sur F2 pour entrer en mode édition et examiner la formule complète dans la barre de formule
  2. 2Vérifiez que le tableau_recherche référencé existe et contient des données : sélectionnez la plage mentionnée avec Ctrl+Shift+Fin pour confirmer ses limites
  3. 3Contrôlez la casse et les espaces de votre valeur_recherche en la comparant manuellement avec les données du tableau (utilisez Ctrl+H pour chercher des espaces superflus)
  4. 4Testez si la valeur existe réellement en utilisant COUNTIF sur le même tableau : =COUNTIF(tableau_recherche,valeur_recherche) pour obtenir 1 ou plus
  5. 5Si la valeur n'existe pas, encapsulez RECHERCHEX dans SIERREUR : =SIERREUR(RECHERCHEX(...),"Non trouvé") pour afficher un message personnalisé
  6. 6Vérifiez le paramètre [mode_recherche] : utilisez 0 pour correspondance exacte (par défaut) ou -1 pour recherche approximative si approprié
  7. 7Vérifiez le paramètre [position_si_non_trouvé] : s'il est omis, ajoutez -1 ou une valeur par défaut pour éviter #N/A en cas d'absence
  8. 8Appuyez sur Ctrl+Shift+Entrée si vous utilisez une version ancienne d'Excel, puis validez avec Entrée et observez le résultat

Exemple concret

Recherche de numéro de commande client dans un historique de ventes

Une responsable commercial utilise RECHERCHEX pour retrouver le montant total d'une commande à partir du numéro de commande saisi par un client. Les données sont dans une feuille 'Commandes' avec les colonnes : NumCommande, Client, DateCommande, Montant.

Avant (erreur)

=RECHERCHEX(A2;Commandes!A:A;Commandes!D:D)

Après (corrigé)

=SIERREUR(RECHERCHEX(SUPPRESPACE(TEXTE(A2;"0"));Commandes!A:A;Commandes!D:D);"Commande introuvable - Vérifiez le numéro")

Problème : L'erreur #N/A apparaît car le numéro de commande recherché n'existe pas exactement dans la base de données. Cela peut être dû à : des espaces invisibles en début/fin, des formats différents (texte vs nombre), ou simplement un numéro qui n'a jamais été créé.

Solution : Combiner RECHERCHEX avec SIERREUR pour afficher un message explicite, et nettoyer les données avec SUPPRESPACE() et TEXTE() pour harmoniser les formats avant la recherche.

Conseil de prévention

Vérifiez que la valeur recherchée existe réellement dans le tableau de recherche avant de lancer la formule, sinon utilisez le paramètre [si_non_trouvé] pour afficher un message personnalisé au lieu de #N/A.

Outils gratuits pour corriger vos formules

Utilisez ces outils gratuits pour éviter cette erreur :

Vous êtes bloqué par une erreur #N/A dans RECHERCHEX ? ElyxAI diagnostique et corrige automatiquement vos formules en quelques secondes. Essayez gratuitement maintenant et retrouvez des données fiables sans effort.

Voir aussi