Excel: Ignorer les valeurs non reconnues

Résolu/Fermé
Le_Goret - 17 mai 2010 à 11:15
tontong Messages postés 2567 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 20 novembre 2024 - 17 mai 2010 à 18:13
Bonjour,

Je travaille sur un fichier manipulé par un grand nombre de personnes dans la boite.
J'essaie d'en extraire des informations. Le problème c'est que tout le monde n'entre pas ses données de la même façon. De temps en temps au milieu d'une colonne de chiffres je vais avoir un "NC", un "-" ou peut-être un "x". Comment faire pour que mes formules ne m'affichent pas systématiquement NA, autrement dit que que les formats autres que les chiffres soient ignorés notamment lors de l'utilisation de sommeprod?
N'hésitez pas à me demander de préciser certains points si je ne suis pas clair.



A voir également:

2 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
17 mai 2010 à 11:20
Salut,
Sans connaitre tes formules, difficile de t'apporter LA solution. Voici un exemple avec la formule "SOMME" :
=SOMME(SI(ESTERREUR(A1:A10);0;A1:A10))
0
Ok, par exemple pour la formule:

=SOMMEPROD(Z2:Z1200*(AF2:AF1200=Feuil1!K10)*(G2:$G$1200=Feuil1!J10)*(B2:B1200>=Feuil1!K8))
Comment faire pour que ma formule ne s'arrete pas à la moindre cellule non reconnue?
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
Modifié par pijaku le 17/05/2010 à 11:40
Peut être (sans le classeur original j'ai du mal à me faire une idée de ce que dois faire ta formule... En plus, je ne suis pas bien réveillé!!) avec une formule matricielle comme celle ci :
=SOMME((AF2:AF1200=Feuil1!K10)*(G2:G1200=Feuil1!J10)*(B2:B1200>=Feuil1!K8)*(Z2:Z1200))
écris cette formule dans la cellule ou tu veux le résultat et, au lieu de faire "entrée" pour la valider il faut taper : Ctrl + Shift + Entrée. Si la manipulation est bien faite, ta formule doit apparaitre entre {}.
EDIT : ne fonctionne pas. Je me repenche dessus, avec un gros gros doute sur la faisabilité.
0
Salut j'ai bien fait comme tu m'as dit, ma formule apparait bien entre {} mais prend toujours en compte les cellules non reconnues! Ma formule marche par exemple de la ligne 1 à 100 mais il suffit qu'à la ligne 101 quelqu'un décide de mettre un sigle au lieu d'une valeur pour que la formule ne marche plus.
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
17 mai 2010 à 11:49
Vraiment pas bien réveillé... Essayez cette formule matricielle (valider par Ctrl+Shift+Entrée) :
=SOMME((SI(ESTNONTEXTE(Z2:Z1200);(Z2:Z1200);0)*(AF2:AF1200=Feuil1!K10)*(G2:$G$1200=Feuil1!J10)*(B2:B1200>=Feuil1!K8)))
0
Le même principe est-il réalisable avec somme prod? Ma formule entière est:

=SOMMEPROD(Z2:Z1200*(AF2:$AF1200=K11)*(G2:G1200=J11)*(B2:B1200>=K8))-SOMMEPROD(Z2:Z1200*(AF2:AF1200=K11)*(G2:G1200=J11)*(B2:B1200>=M8)))/(SOMMEPROD((AG2:AG1200=CONCATENER(J11;K11))*(B2:B1200>=K8*1)*(B2:B1200<=M8*1))))
0
Je viens dutiliser estnontexte ici ca me donne:

=SOMMEPROD(estnontexte(Z2:Z1200)*(estnontexte(AF2:$AF1200)=K11)*(estnontexte(G2:G1200)=J11)*(estnontexte(B2:B1200)>=K8))-SOMMEPROD(estnontexte(Z2:Z1200)*(estnontexte(AF2:AF1200)=K11)*(estnontexte(G2:G1200)=J11)*(estnontexte(B2:B1200)>=M8)))/(SOMMEPROD((estnontexte(AG2:AG1200)=CONCATENER(J11;K11))*(estnontexte(B2:B1200)>=K8*1)*(estnontexte(B2:B1200)<=M8*1))))

Et ca me donne sytématiquement -1. Où est mon erreur?
0