Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Comment éviter #N/A?

  • Initiateur de la discussion Initiateur de la discussion Aloha
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Aloha

XLDnaute Accro
Bonjour,

J'ai une formule très grande avec plusieurs RECHERCHEV qui me donne #N/A lorsqu'il n'y a pas de valeur dans la cellule correspondante.

Comment puis-je éviter l'affichage de cette "valeur" sans avoir à répéter toute la formule avec SI(ESTNA...?

Merci pour toute aide

Aloha
 
Re : Comment éviter #N/A?

Bonjour

En admettant que tu as :
- la valeur à rechercher en Feuil1!A1
- ton tableau de recherche en Feuil2!A1:B100

Ce qui devrait donner une formule de RECHERCHEV comme ceci
Code:
=RECHERCHEV(Feuil1!A1;Feuil2!A1:B100;2;0)

Pour supprimer le renvoi d'une erreur #N/A, il y a un petit truc à connaitre.
Je rajoute en fin de tableau de recherche la valeur à rechercher. C'est important de la rajouter en fin de tableau, les fonctions de recherche renvoyant le résultat dès la première occurrence trouvée.

En Feuil2!A101 je rajoute donc une formule =Feuil!A1
En Feuil2!B101 j'indique le message que tu souhaites faire passer, exemple "Valeur inconnue"
Puis je modifie la formule de recherche
Code:
=RECHERCHEV(Feuil1!A1;Feuil2!A1:B101;2;0)

Et voilà le tour de magie est effectué.

Comme tu indiques que c'est une formule assez longue, si ta recherche est effectuée sur plusieurs pages. Même si cela fonction, je te conseille d'indiquer la formule dans un fichier.

@+Jean-Marie
 
Dernière édition:
Re : Comment éviter #N/A?

Bonjour,
Sinon pour éviter les messages d'erreur, tu peux ajouter un si(esterreur au début de ta formule. Exemple :
=si(esterreur(RECHERCHEV(Feuil1!A1;Feuil2!A1:B100;2;0);"";RECHERCHEV(Feuil1!A1;Feuil2!A1:B100;2;0))
Lorsque qu'il y arau une erreur, il te renvoiera "", sinon rechercheV
A plus
 
Re : Comment éviter #N/A?

Bonjour Jean-Marie,

et merci pour ta réponse.

Ma formule:

=RECHERCHEV(AH66;Feuil1!$Q$3:$BS$14;SI(JOURSEM(MAX($A$41:$A$69))=8;RECHERCHEV(MAX($A$41:$A$69);Feuil1!$B$34:$C$62;2;FAUX);RECHERCHEV(MAX($A$41:$A$69);Feuil1!$B$34:$C$62;2;FAUX)-1)+3;FAUX)*1

Le *1, je l'avais ajouté espérant en attendre un résultat positif.

AH66: un nom; Q3:BS14: un tableau avec des valeurs dont une valeur doit donc être renvoyée et où se pose le problème de #N/A; A41:A69: les dates d'un mois; B34:C62: en B donc les dates, en C le numéro de la semaine

Je ne sais pas si tu peux comprendre la formule sans voir les domaines et valeurs auxquels elle fait référence.

A+

Aloha
 
Dernière édition:
Re : Comment éviter #N/A?

Bonjour "meljda",

je ne comprends pas ce que tu veux dire dans ton dernier message ; là une phrase entière ferait sûrement miracle.

Merci pour la solution que tu proposes; malheureusement elle présente l'inconvénient d'un double calcul par Excel de la formule.

Bonne journée

Aloha
 
Re : Comment éviter #N/A?

Aloha, j'avais mal lu ton post et je t'ai proposé une solution que tu connaissais déjà et dont tu voulais te passer "=si(esterreur". Je disais donc que j'étais désolé de ne pas te proposer ce qui t'intéresse. J'aurai lire complètement ton message.
Bonne journée et bonne chance
 
Re : Comment éviter #N/A?

Jean-Marie,

Je pense que j'ai mal compris ta dernière phrase et que tu voulais dire que je devrais documenter la formule et non pas la poster?

Quoi qu'il en soit, je n'arrive pas à mettre en oeuvre ta solution, parce qu'il n'y a pas qu'une seule formule de cette sorte: il y a un certain nombre de noms pour lesquels je cherche une valeur; il faudrait donc que j'ajoute autant de lignes avec le renvoi (=FeuilA1 [je pense qu'il manque le 1] dans ton exemple) qu'il y a de noms; et dans ton exemple il y 1 colonne de valeurs; j'en ai autant qu'il y a de semaines: 52!

A+

Aloha
 
Re : Comment éviter #N/A?

Re...

Pour commencer, je simplifierai ta formule
Code:
=RECHERCHEV(AH66;Feuil1!$Q$3:$BS$14;RECHERCHEV(MAX($A$41:$A$69);Feuil1!$B$34:$C$62;2;FAUX)+SI(JOURSEM(MAX($A$41:$A$69))=8;2;3);FAUX)
Ensuite il y a soit une faute de frappe ou une erreur dans la formule
JOURSEM(MAX($A$41:$A$69)) ne sera jamais égal à 8, sa valeur max n'est que de 7

Pour corriger ta formule suivant la proposition de mon premier post.
Rajoute dans la Feuil1!$Q$15, la formule =....!AH66 (remplace les ... par le nom de la feuille.
Et modifie la formule
Code:
=RECHERCHEV(AH66;Feuil1!$Q$3:$BS$15;RECHERCHEV(MAX($A$41:$A$69);Feuil1!$B$34:$C$62;2;FAUX)+SI(JOURSEM(MAX($A$41:$A$69))=8;2;3);FAUX)
@+Jean-Marie
 
Dernière édition:
Re : Comment éviter #N/A?

Bonjour forum
Aloha, Jean-Marie, meldja,
Ayant eu ce problème que je viens de résoudre pour mon classeur
Il faut agir au niveau cellule AH66
Un fichier vaut mieux qu’un grand dicours
A+
Cordialement jacky 17
 

Pièces jointes

Re : Comment éviter #N/A?

Bonjour Jean-Marie,

Merci pour la formule; cependant, alors que tu fais remarquer à raison que JOURSEM ne peut pas prendre la valeur 8, tu as toi-même intégré SI(JOURSEM(...)=8 dans la formule!

Je n'ai pas encore pu tester la formule.

Dommage que la taille des fichiers joignables est tellement limitée; il serait bien plus aisé de travailler sur le fichier réel.

A+

Aloha
 
Dernière édition:
Re : Comment éviter #N/A?

Bonjour forum
Aloha, Jean-Marie, meldja,
Formule de base de mon classeur
,= RECHERCHEV($C$5;'Listing Impres'!$B$3:$J$101;1;0)
Formule modifiée
,=SI($C$5=0;0;RECHERCHEV($C$5;'Listing Impres'!$B$3:$J$101;1;0)) cette formule à enlever le #N/A
Ta formule
,= RECHERCHEV(AH66;Feuil1!$Q$3:$BS$14;SI(JOURSEM(MAX ($A$41:$A$69))=8;RECHERCHEV(MAX($A$41:$A$69);Feuil 1!$B$34:$C$62;2;FAUX);RECHERCHEV(MAX($A$41:$A$69); Feuil1!$B$34:$C$62;2;FAUX)-1)+3;FAUX)*1
Ta formule modifiée
,=SI(AH66=0 ;0 ;RECHERCHEV(AH66;Feuil1!$Q$3:$BS$14;SI(JOURSEM(MAX ($A$41:$A$69))=8;RECHERCHEV(MAX($A$41:$A$69);Feuil 1!$B$34:$C$62;2;FAUX);RECHERCHEV(MAX($A$41:$A$69); Feuil1!$B$34:$C$62;2;FAUX)-1)+3;FAUX)*1
Le correcteur d’Excel fermera la parenthèse
Sans le fichier difficile de savoir si sa fonctionne
A+ A te lire
Cordialement jacky 17
 
Re : Comment éviter #N/A?

Bonsoir

J'ai laissé volontairement la condition SI(JOURSEM(MAX($A$41:$A$69))=8;2;3), uniquement pour te montrer comment je simplifiai la formule, et dans le cas d'une erreur de frappe que tu ne remettes la bonne valeur du comparateur.

Je suppose que ton problème, n'est pas résolu ?.

Je te conseille donc, de poser ton ficheir, sans des données confidentielles, pour que je comprenne ce que tu n'arrives pas à faire.

@+Jean-Marie
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
243
Réponses
6
Affichages
702
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…