XL 2010 #N/A dans formule OR

Lue

XLDnaute Nouveau
Bonjour à tous,

J'essaye de faire tourner cette formule: =IF(OR(INDEX(A20:A25,MATCH(A3,A20:A25,0)),INDEX(A20:A25,MATCH(A3-1,A20:A25,0))),VLOOKUP(A3,A20:B46,1),0).
L'idée de cette formule INDEX(A20:A25,MATCH(A3,A20:A25,0)) est qu'elle affiche une date si la date du jour et une date de paiement match. Mais si elles ne match pas cela me met #N/A du coup ça me met #N/A pour toute ma formule...

Que puis-je faire pour que la formule tourne quand même?
Merci d'avance !
 

Lue

XLDnaute Nouveau
Bonjour Lue,
Si un des paramètres est #N/A alors évidemment toute la formule est de même.
Si la question est de faire disparaître ce #N/A alors faites :
VB:
=Sierreur( Votre formule ; "" )
ou
=Iferror( YourFormula , "" )


J'ai utilisé la formule que vous m'avez proposé: OR(IFERROR(INDEX(A20:A25,MATCH(A3-1,A20:A25,0)),""),IFERROR(INDEX(A20:A25,MATCH(A3,A20:A25,0)),""))
Les deux parties fonctionnent séparement mais dès que j'ajoute le OR, j'ai #value!
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
VB:
=IFERROR(IF(OR(INDEX(A20:A25,MATCH(A3,A20:A25,0)),INDEX(A20:A25,MATCH(A3-1,A20:A25,0))),VLOOKUP(A3,A20:B46,1),0),"")
C'est toute la formule qui doit être dans le Iferror.
S'il manque un membre votre formule renverra toujours une erreur.

Si l'idée était que si un membre de la formule est en erreur, je le retire et la formule marche, alors je crains bien que cela ne soit pas possible.
 

Lue

XLDnaute Nouveau
J'ai réussi à faire fonctionner la formule mais malheureusement le OR ne me donne que VRAI ou FAUX et pas la valeur. Auriez-vous peut-être une idée de ce que je pourrais utiliser ? L'idée est que si la date de paiement et du jour coincident Excel m'affiche cette date.
Je vais donner un exemple pour que cela soit plus clair:
Le paiement peut se faire le 1 ou le 2 en décembre (mais en janvier les dates sont différentes). Donc si on est le 1/12 ou le 2/12 alors ça coincident et Excel affiche la date
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Un essai :
VB:
=SI(ESTERREUR((INDEX(A20:A25;EQUIV(A3;A20:A25;0)))+1)=FAUX;INDEX(A20:A25;EQUIV(A3;A20:A25;0));SI(ESTERREUR(INDEX(A20:A25;EQUIV(A3+1;A20:A25;0))+1)=FAUX;INDEX(A20:A25;EQUIV(A3+1;A20:A25;0));""))
( dans la PJ les formules devraient se mettre directement en anglais )
Mais deux questions :
1- A quoi sert le Vlookup ? puisque vous cherchez la valeur A3 et vous l'avez déjà par le IndexMatch.
3- A quoi sert la matrice A20:B46 puisque vous ne cherchez des dates que dans A20:A26 ?

Mais pas sûr d'avoir tout compris.
 

Pièces jointes

  • Classeur1.xlsm
    8.9 KB · Affichages: 10

Discussions similaires

Réponses
3
Affichages
186

Statistiques des forums

Discussions
312 198
Messages
2 086 137
Membres
103 129
dernier inscrit
Atruc81500