Bug fonction "ou" excel

Résolu/Fermé
sabdani Messages postés 25 Date d'inscription mercredi 30 mars 2011 Statut Membre Dernière intervention 9 février 2013 - 13 sept. 2011 à 13:39
sabdani Messages postés 25 Date d'inscription mercredi 30 mars 2011 Statut Membre Dernière intervention 9 février 2013 - 14 sept. 2011 à 10:55
Bonjour,
J'ai une formule excel qui ne fonctionne pas bien et je ne comprends pas pourquoi:

=SI(OU(ESTERREUR(P264),P264=0),"/ ",JOUR(P264)&"/"&MOIS(P264)&"/"&ANNEE(P264))

Si la P264 =0 , ou contient une date, pas de problèmes, la formule marche très bien. Par contre si la case P264 contient #N/A, alors excel me renvoie #N/A au lieu de "/". Je trouve cela bizarre d'autant plus que si j'enlève la fonction ou et le P264=0 de la formule, alors j'obtiens bien "/"quand la cellule p264 contient #N/A
Quelqu'un peut me dire pourquoi.
Merci
A voir également:

4 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 411
13 sept. 2011 à 14:11
Bonjour
je pense qu'excel analyse les deux conditions en même temps et ne peut donc associer les deux simultanément :
essayez de les séparer avec:
=SI(ESTERREUR(P264);"/";SI(P264=0;"/";JOUR(P264)&"/"&MOIS(P264)&"/"&ANNEE(P264)))
avec bien sur des virgules à la, place de point virgule selon votre séparateur de liste
crdlmnt
1
Je pense que c'est à cause de tes , il faut les remplacer par des ;
0
tontong Messages postés 2556 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 5 septembre 2024 1 057
13 sept. 2011 à 14:16
Bonjour,
On peut proposer un remède sans connaitre la cause du mal: imbriquer 2 SI au lieu d'utiliser un OU.
=SI(ESTERREUR(P264);"/ ";SI(P2=0;"/ ";JOUR(P264)&"/"&MOIS(P264)&"/"&ANNEE(P264)))
Une explication serait la bienvenue.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 411
13 sept. 2011 à 15:28
Salut tontong
la solution est correcte et la cause du mal est assez facile à identifier:
en utilisant le code OU, on demande à Excel de traiter simultanément les deux conditions avant de passer à la suivante
et excel ne sait pas comparer un NA avec une valeur numérique, ici 0
démonstration: inverse les deux conditions dans notre proposition et tu verras que cela ne fonctionne pas non plus.
En séparant les deux , on arrête la lecture de la formule dès que la première condition est remplie.
crtdlmnt
0
tontong Messages postés 2556 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 5 septembre 2024 1 057
13 sept. 2011 à 15:52
À Vaucluse
Bien sûr je n'avais pas vu ta réponse avant de poster: les mauvaises habitudes ne se perdent pas facilement!
Seuls les tâtonnements m'ont conduit à une solution. En fait ce qui m'a le plus perturbé c'est que en cas de NA =OU(ESTERREUR(P264),P264=0) retourne VRAI.
Merci encore pour l'explication. Je dormirai mieux ce soir ;-)
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 411
Modifié par Vaucluse le 13/09/2011 à 17:22
j'espère que ça ne t'empêchait pas de dormir:-))), tontong.
ceci dit, je ne sais pas quel est ton excel, mais le mien renvoie NA si j'écris
=OU(ESTERREUR(P264);P264=0) comme tu l'as testé et que P264 est NA

bonne nuit quand même
0
tontong Messages postés 2556 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 5 septembre 2024 1 057
13 sept. 2011 à 18:55
Je ne sais pas comment va être la nuit mais ce n'est pas mon jour!
J'avais testé =OU(ESTERREUR(P264);Q264=0) pour voir si le problème venait d'un double test sur une même cellule. Mille excuses présentées pour avoir aggravé mon cas en écrivant une ânerie.
0
sabdani Messages postés 25 Date d'inscription mercredi 30 mars 2011 Statut Membre Dernière intervention 9 février 2013 5
14 sept. 2011 à 10:55
Merci pour votre aide, la formule avec les si séparés marche très bien. :)
0