#N/A signifie "non disponible" : une recherche comme RECHERCHEV, RECHERCHEX ou EQUIV n'a pas trouvé la valeur demandée. Ci-dessous, =RECHERCHEV(E2;A2:B6;2;FAUX) renvoie #N/A parce que Kiwi n'est pas dans la liste. Remplacez E2 par Pear et elle renvoie 1.5. Le tableau affiche les formules sous leur forme anglaise (VLOOKUP pour RECHERCHEV), avec des virgules, mais vous pouvez aussi les taper comme dans un Excel français, avec des points-virgules.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Price | Look for | Price | ||
| 2 | Apple | 1.2 | Kiwi | #N/A | ||
| 3 | Pear | 1.5 | ||||
| 4 | Plum | 0.8 | ||||
| 5 | Bread | 2.4 | ||||
| 6 | Milk | 1.1 |
#N/A La valeur cherchée n’est pas dans la plage de recherche.Dans Excel en français : =RECHERCHEV(E2;A2:B6;2;FAUX)Quand la valeur manque vraiment, #N/A est la bonne réponse, et SI.NON.DISP (plus bas) la transforme en message. Les cas à corriger sont ceux où la valeur est là et où la recherche échoue quand même. Un Excel français affiche aussi cette erreur sous le nom #N/A, mais Excel dans d'autres langues l'affiche sous son propre nom, comme #NV en allemand, #N/D en portugais et en italien, #Н/Д en russe et #YOK en turc ; c'est la même erreur.
#N/A après avoir recopié une recherche vers le bas
La cause la plus fréquente dans les vraies feuilles : la formule fonctionne dans la première ligne, et certaines lignes en dessous affichent #N/A alors que les produits sont dans la liste.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Price | Order | Price | ||
| 2 | Apple | 1.2 | Apple | 1.2 | ||
| 3 | Pear | 1.5 | Plum | 0.8 | ||
| 4 | Plum | 0.8 | Pear | #N/A | ||
| 5 | Bread | 2.4 | Milk | 1.1 | ||
| 6 | Milk | 1.1 | Apple | #N/A |
#N/A La valeur cherchée n’est pas dans la plage de recherche.Dans Excel en français : =RECHERCHEV(E4;A4:B8;2;FAUX)Cliquez sur F4 : sa plage de tableau est A4:B8, deux lignes plus bas que celle de F2. Recopier la formule vers le bas a déplacé la plage avec elle, donc Pear (ligne 3) et Apple (ligne 2) en sont sortis. F3 et F5 fonctionnent seulement parce que Plum et Milk sont encore dans leurs plages. Cliquez sur F2 et changez la plage en $A$2:$B$6 : toute la colonne suit et chaque prix apparaît. Les signes $ bloquent la plage, voir références absolues.
#N/A à cause d'espaces en trop
"Pear " avec une espace à la fin et "Pear" sont deux valeurs différentes pour Excel. Les espaces viennent de données tapées à la main, copiées depuis des pages web ou exportées d'autres systèmes, et elles sont invisibles dans la cellule.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Price | Look for | Price | Length of A2 | |
| 2 | Pear | 1.5 | Pear | #N/A | 5 | |
| 3 | Apple | 1.2 | ||||
| 4 | Plum | 0.8 |
#N/A La valeur cherchée n’est pas dans la plage de recherche.Dans Excel en français : =RECHERCHEV(D2;A2:B4;2;FAUX)E2 renvoie #N/A. F2 montre la cause : Pear a 4 lettres, mais A2 fait 5 caractères. Supprimez l'espace en A2 et la recherche fonctionne. Trois façons de régler le problème pour de bon :
- Nettoyez la colonne : mettez
=SUPPRESPACE(A2)dans une colonne d'aide, recopiez vers le bas, puis copiez-la et faites Accueil > Coller > Valeurs sur l'original. - Nettoyez la valeur cherchée quand les espaces sont dans ce que vous tapez :
=RECHERCHEV(SUPPRESPACE(D2);A2:B4;2;FAUX). - Nettoyez toute la colonne de recherche dans la formule (Excel 2021 ou Microsoft 365) :
=RECHERCHEX(D2;SUPPRESPACE(A2:A4);B2:B4).
Le texte collé depuis des pages web peut contenir une espace insécable, que SUPPRESPACE ne supprime pas. La page SUPPRESPACE montre comment la remplacer avec SUBSTITUE(A2;CAR(160);" ").
#N/A quand la valeur n'est pas dans la première colonne
RECHERCHEV ne cherche que dans la première colonne de sa plage et renvoie une colonne située à sa droite. Chercher une valeur d'une autre colonne renvoie #N/A, même si elle est dans le tableau.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Code | Price | Code | VLOOKUP | XLOOKUP | |
| 2 | Apple | A-17 | 1.2 | P-22 | #N/A | Pear | |
| 3 | Pear | P-22 | 1.5 | ||||
| 4 | Plum | P-31 | 0.8 | ||||
| 5 | Bread | B-05 | 2.4 | ||||
| 6 | Milk | M-40 | 1.1 |
#N/A La valeur cherchée n’est pas dans la plage de recherche.Dans Excel en français : =RECHERCHEV(E2;A2:C6;1;FAUX)Les codes sont dans la colonne B, donc RECHERCHEV sur A2:C6 cherche P-22 parmi les noms de produits et échoue. Elle ne peut pas non plus renvoyer le nom du produit, qui se trouve avant le code. RECHERCHEX prend séparément la colonne de recherche et la colonne de retour et trouve Pear. Dans Excel 2019 et les versions plus anciennes, =INDEX(A2:A6;EQUIV(E2;B2:B6;0)) fait la même chose.
#N/A à cause de nombres stockés sous forme de texte
Un numéro de commande tapé comme du texte ('1001, ou importé d'un CSV) ne correspond jamais au nombre 1001, et inversement. Les deux cellules affichent 1001, donc ce cas est difficile à voir. Dans Excel :
A2:B6 holds order numbers stored as text, E2 holds the number 1001
=VLOOKUP(E2,A2:B6,2,FALSE) #N/A
=VLOOKUP(E2&"",A2:B6,2,FALSE) found: E2&"" turns the number into text
A2:B6 holds real numbers, E2 holds "1001" as text
=VLOOKUP(E2,A2:B6,2,FALSE) #N/A
=VLOOKUP(--E2,A2:B6,2,FALSE) found: -- turns the text into a number
Dans un Excel français, les deux corrections s'écrivent =RECHERCHEV(E2&"";A2:B6;2;FAUX) et =RECHERCHEV(--E2;A2:B6;2;FAUX). =ESTTEXTE(A2) indique quel côté est du texte, et un petit triangle vert dans le coin d'une cellule signale un nombre stocké sous forme de texte. Pour convertir toute une colonne, voir texte en nombre.
SI.NON.DISP ou SIERREUR : afficher un message quand rien n'est trouvé
Quand une valeur peut légitimement manquer, affichez quelque chose de plus utile que #N/A. Utilisez SI.NON.DISP (IFNA en anglais), pas SIERREUR :
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Price | Look for | IFNA | IFERROR | ||
| 2 | Apple | 1.2 | Pear | #REF! | Not found | ||
| 3 | Pear | 1.5 | |||||
| 4 | Plum | 0.8 | |||||
| 5 | Bread | 2.4 | |||||
| 6 | Milk | 1.1 |
#REF! La formule fait référence à une cellule qui n’existe pas.Dans Excel en français : =SI.NON.DISP(RECHERCHEV(E2;A2:B6;3;FAUX);"Not found")Les deux formules demandent la colonne 3 d'une plage de deux colonnes, une erreur. SI.NON.DISP laisse passer le #REF!, donc vous voyez le problème. SIERREUR le masque et affiche "Not found" pour Pear, qui est pourtant dans la liste. Remplacez les deux 3 par 2 : chacune affiche alors 1.5, et avec Kiwi en E2 chacune affiche "Not found". RECHERCHEX a le message intégré : =RECHERCHEX(E2;A2:A6;B2:B6;"Not found"). Plus de détails sur la différence dans SIERREUR.
Corriger une recherche cassée par des espaces
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Price | Look for | Price | ||
| 2 | Apple | 1.2 | Plum | |||
| 3 | Pear | 1.5 | ||||
| 4 | Plum | 0.8 | ||||
| 5 | Bread | 2.4 | ||||
| 6 | Milk | 1.1 |
À vous : Chaque produit de la liste a été importé avec une espace à la fin, donc =VLOOKUP(E2,A2:B6,2,FALSE) renvoie #N/A. Écrivez en F2 une formule qui renvoie quand même le prix du produit de E2.
=RECHERCHEX(E2;SUPPRESPACE(A2:A6);B2:B6) nettoie la liste à l'intérieur de la formule. =RECHERCHEV(E2&" ";A2:B6;2;FAUX) fonctionne aussi ici, mais seulement tant que chaque produit a exactement une espace à la fin ; nettoyer la colonne avec SUPPRESPACE est la correction qui dure.
Questions fréquentes
Que signifie #N/A dans Excel ?
N/A veut dire "non disponible". Une fonction de recherche (RECHERCHEV, RECHERCHEH, RECHERCHEX, EQUIV, EQUIVX) n'a pas trouvé la valeur qu'on lui a donnée. =NA() la renvoie aussi volontairement, par exemple pour qu'un graphique saute un point au lieu de le tracer à 0.
Pourquoi RECHERCHEV renvoie-t-elle #N/A alors que la valeur existe ?
Les deux valeurs ne sont pas exactement identiques. Raisons fréquentes : une espace à la fin de l'une d'elles, un nombre stocké sous forme de texte d'un côté et sous forme de nombre de l'autre, ou une plage de tableau sans $ qui a glissé vers le bas quand la formule a été recopiée, si bien que la ligne qui contient la valeur n'est plus dedans.
Pourquoi RECHERCHEV renvoie-t-elle #N/A pour certaines lignes et pas pour d'autres ?
La plage du tableau n'a pas été bloquée avant de recopier la formule vers le bas, donc à chaque ligne elle commence une ligne plus bas : A2:B6 dans la première ligne devient A4:B8 deux lignes plus loin, et les valeurs situées au-dessus de la plage ne sont plus trouvées. Bloquez-la avec $ : =RECHERCHEV(E2;$A$2:$B$6;2;FAUX).
Pourquoi RECHERCHEX renvoie-t-elle #N/A ?
La valeur n'est pas dans le tableau de recherche, ou en diffère par une espace ou parce qu'elle est du texte au lieu d'un nombre. RECHERCHEX cherche une correspondance exacte par défaut, donc rien d'approchant n'est accepté. Son quatrième argument remplace l'erreur : =RECHERCHEX(E2;A2:A6;B2:B6;"Not found").
Pourquoi EQUIV renvoie-t-elle #N/A ?
Avec le type de correspondance 0, la valeur n'est pas dans la plage, exactement comme avec RECHERCHEV. Avec le type 1 ou omis, la plage doit être triée par ordre croissant et la valeur ne doit pas être inférieure à son premier élément ; utilisez =EQUIV(E2;A2:A6;0) pour une correspondance exacte.