Excel : commande ESTNA et masquer les formule [Résolu/Fermé]

Signaler
Messages postés
4797
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
18 décembre 2018
-
 seb -
Bonjour,
J'ai sous excel, une colonne A avec des numéros de produits et une colonne B avec le prix unitaire de ces produits. J'obtiens ce prix unitaire avec une RECHERCHEV liée à un onglet à part dans mon classeur où j'ai mon catalogue de produits avec les prix unitaires.
Ma formule pour récupérer ces prix :
=SI(A2="";"";RECHERCHEV(A2;PRODUITS;2;FAUX)). Jusque là tout marche bien.

Quand mes correspondants me retournent ce tableau, quand il y a une erreur de code, il y a toujours N/A qui s'affiche. Normal. Mais je voudrais personnaliser le message d'erreur au lieu d'avoir N/A. J'ai trouvé sur le Net la formule ESTNA . Je l'ai insérée comme ça :
=SI(A2="";"";(ESTNA(RECHERCHEV(A2;PRODUITS;2;"CODE PRODUIT FAUX")))) et j'ai FAUX en réponse. Est-ce quelqu'un connaît la formule ?

Je voudrais aussi masquer mes formules, comment faire ?
Merci d'avance de votre aide.

16 réponses

Messages postés
16356
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
3 août 2020
9 601
Bonsoir,

J'ai répondu à ce même type de question pas plus tard qu'hier. Il faut tester le résultat #N/A :

=SI(ESTNA(RECHERCHEV(A2;produits;2;FAUX));"code produit faux";(RECHERCHEV(A2;produits;2;FAUX)))

m@rina
34
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 56926 internautes nous ont dit merci ce mois-ci

Messages postés
16356
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
3 août 2020
9 601
Hello Agixu,

Mais pourquoi veux-tu t'accrocher à cette formule qui est fausse ?.... :D))

Le principe est :

Si le résultat de la formule est N/A !
SI (ESTNA(formule)


On aura le texte 'Pas de produit"

Sinon on aura la formule.

Tu vois que la réponse de Myriam a la même syntaxe, sauf qu'elle utilise ESTERREUR. La différence fait qu'elle teste n'importe quelle erreur, alors que ESTNA teste uniquement l'erreur #N/A.

ESTNA tout seul, comme tu le mets dans la valeurs si faux, donne VRAI ou FAUX... C'est tout. C'est pourquoi il faut tester le résultat de la formule.

m@rina
Messages postés
4797
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
18 décembre 2018
3 698
Je veux garder ma formule si(A2 est égal à rien, alors tu mets rien) parce que quand j'envoie mon tableau qui est sur 3 pages environ je ne peux pas prévoir le nombre de lignes qui seront renseignées qui sont variables d'un mois à lautre. Et si je ne mets cette formule toutes les lignes qui ne seront pas renseignées il y aura un N/A ou le texte que j'aurai défini "texte inconnu" qui s'affichera. Et je veux pas. Les lignes dont ils n'auront pas besoin doivent rester vierges.
Messages postés
16356
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
3 août 2020
9 601
OK j'ai compris ce que tu veux Agixu,

Ma formule représente alors la valeur si faux de ta première formule, donc :

=SI(A2="";"";(SI(ESTNA(RECHERCHEV(A2;produits;2;FAUX));"code produit faux";(RECHERCHEV(A2;produits;2;FAUX)))))

Bonne soirée,

m@rina
Messages postés
4797
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
18 décembre 2018
3 698
Merci mille fois Marina. ça marche très bien.
En échange, je te donne ce que j'ai trouvé sur le net comment masquer les formules :
Dans Format - Cellules
- Dans l’onglet Protection, cocher Masquer.
- Aller ensuite dans Outils - Protéger la feuille, pour rendre actif le masquage
Il paraît que ce masquage est illusoire car des programmes existeraient pour les démasquer. Carambar !
Bonjour,

J'ai lu ta réponse sur la #N/A et ça me sert bien.
Maintenant je fais une recherche sur des cellules contenant des dates et et voudrais que s'il n'y a rien elle mette rien et pas 0. Car 0 renvoie la date du "0 janvier 00" et c'est pas pratique pour les graphiques.

Merci d'avance
Un GRAND merci: ça marche!
Messages postés
4797
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
18 décembre 2018
3 698
Merci Marina
Mais j'avais déjà testé comme ça aussi en répétant la syntaxe comme dans ta formule
Mais c'est quand je maintiens au début SI(A2="";"";(ESTNA.... puis ta formule qu'Excel me jette.

Merci de voir
Messages postés
16356
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
3 août 2020
9 601
Ahhh Argixu, tout est illusoire dans la vie !! ;)

et tout existe pour passer outre les mots de passe.

Cela dit, essaie de masquer les cellules, avec protection de la feuille. Ensuite, copie-colle les cellules dans un autre fichier, la formule n'existe plus, elle est remplacée par sa valeur.
Il me semble bien que dans les anciennes versions d'Excel, on pouvait récupérer la formule (à vérifier)...

m@rina
Messages postés
2966
Date d'inscription
mardi 20 janvier 2009
Statut
Contributeur
Dernière intervention
20 décembre 2016
793
Salut le forum

Il aurait été préférable d'ouvrir une nouvelle ficelle, celle-ci étant déjà [Résolu]

Correction des points-virgules et parenthèses
=SI(ESTNA(INDEX(articles!A:A;EQUIV(commande!B:B;articles!B:B;0);1));"";INDEX(articles!A:A;EQUIV(commande!B:B;articles!B:B;0);1))


Mytå
Versions installées [MsProject 2003(FR), Excel 2003-2007(FR)]
Bonjour Agixu,

pour ta formule utilise plutôt

=si(esterreur(A2="";"";RECHERCHEV(A2;PRODUITS;2;FAUX));"tu met le texte que tu veux faire apparaître";RECHERCHEV(A2;PRODUITS;2;FAUX))

Voilà par contre pour masquer je ne sais pas
Messages postés
4797
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
18 décembre 2018
3 698
Myriam, en utilisant le ESTERREUR, j'ai tjrs le même problème. Il me dit que j'ai une erreur dans ma formule et pointe sur le 2ème "" ( s'il n'ya rien, alors tu mets rien). J'ai supprimé la ( avant rechercheV comme toi
=SI(ESTERREUR(A18="";"";RECHERCHEV(A18;PRODUITS;2;FAUX));"code inconnu";RECHERCHEV(A18;PRODUITS;2;FAUX))
Excuse je me suis planté c'est

=si(esterreur(RECHERCHEV(A2;PRODUITS;2;FAUX));"tu met le texte que tu veux faire apparaître";RECHERCHEV(A2;PRODUITS;2;FAUX))

Normalement c'est bon
bjr a toi

ou dois je ecrire ma formule (c-a-d dans la barre des formules ou avec vb)
bonjour, ou bonsoir, à toutes et à tous !

je bloque sur le dossier N°1 du dossier ABI Tout Technique

je bosse sur excel et j'ai une formule que je n'arrive pas comprendre : pkoi le message me met "FAUX"

Pourtant j'ai bien vérifié si je n'ai pas oublié un point virgule ou une parenthèse !

c'est en train de m'agacer mais pa croyable quoi !!!

Merci de me mettre sur la piste si quelqu'un à déjà bosser sur ce dossier !
bonjour

j'ai essaye la formule,mais elle m'affiche "diéze nom" (desole g pas pu ecrire le symbole diése alors j'ai ecris) et elle me supprime le resulta
Bonjour
Tout d'abord tu dois limiter la plage de recherche dans le catalogue de produits. exp: A1:D20 (4 colonnes et le prix se trouve en B la 2ème colonne)
la formule: SI(ESTNA(RECHERCHEV(A2;'PRODUIT'!A1:D20;2;FAUX));""RECHERCHEV(A2;'PRODUIT'!A1:D20;2;FAUX))
Comme ça , la formule renvoie du blanc au lieu de N/A.
Si tu applique la protection de la feuille ,tu peux cocher "masquer les formules".
Bonne chance
Bonjour,

Je réactive cette question parce que j'ai le même problème:
ma formule actuelle est
=INDEX(articles!A:A;EQUIV(commande!B:B;articles!B:B;0);1)
Si aucun article n'est sélectionnée j'ai toute une série de #N/A dans les colonnes références, prix, etc...

J'ai tenté d'insérer "estna" pour masque ce #N/A mais j'ai à chaque fois un message d'erreur...
Voici la formule refusée:
=si(estna(=INDEX(articles!A:A;EQUIV(commande!B:B;articles!B:B;0);1)""(=INDEX(articles!A:A;EQUIV(commande!B:B;articles!B:B;0);1)

Comme dirait je ne sais plus qui: chercher l'erreur...

Qui peut m'aider en corrigeant ma formule?

Merci
Bonjour,
voilà la formule modifiée

=si(estna(INDEX(articles!A:A;EQUIV(commande!B:B;articles!B:B;0);1));"";(INDEX(articles!A:A;EQUIV(commande!B:B;articles!B:B;0);1)))

bonne continuation ;-)
Merci pour l'aide. Je l'insère dans la feuille.
A+
Il existe une solution beaucoup plus simple sans passer par le casse tête des formules (pour nous et surtout pour le pauvre excel), pour excel 2003:

- Format==>Mise en forme conditionnelle
- choisir "la formule est"
- dans le champs, écrire "=ESTERREUR($J$6)" sans les guillemets
mettre la case en question à la place de $J$6
- choisir une couleur de texte blanche dans le format.
-valider

source: http://silkyroad.developpez.com/Excel/MiseEnFormeConditionnelle/

Cdt
Walid
Messages postés
16356
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
3 août 2020
9 601
Bonjour,

Sauf que ESTERREUR teste toutes sortes d'erreur, et pas seulement le #N/A.
Par ailleurs, la MEC ne permet pas de mettre un message personnalisé, comme demandé par argixu.

m@rina