Autres Comment éviter une trop longue chaine de " si(ou( "

alain.pierrephie

XLDnaute Occasionnel
Bonjour à tout le forum
Je suis confronté à un souci que j'ai pas réussit à trouver une solution:
Lorsque j'utilise la fonction "si(ou( " mais qu'il y a beaucoup de conditions comme dans l'exemple fournit en fichier comment peut-on faire pour éviter de répéter un "ou" 20 ou 30 fois ? Comme par exemple en "P26" j'ai --- SI(OU(P25=O26;Q25=O26;R25=O26;S25=O26;T25=O26;U25=O26;V25=O26;P24=O26;O26=Q24;O26=R24;O26=S24;O26=T24;O26=U24;O26=V24;P23=O26;Q23=O26;R23=O26;S23=O26;T23=O26;U23=O26;V23=O26;P22=O26;Q22=O26;O26=R22;O26=S22;O26=T22;O26=U22;O26=V22;O26=P21;O26=Q21;O26=R21;O26=S21;O26=T21;O26=U21;O26=V21;O26=P20;O26=Q20;O26=R20;O26=S20;O26=T20;O26=U20;O26=V20;O26=P19;O26=Q19;O26=R19;O26=S19;O26=T19;O26=U19;O26=V19;O26=P18;O26=Q18;O26=R18;O26=S18;O26=T18;O26=U18;O26=V18);"";

Comment éviter cette trop longue chaine de "ou" de la cellule "P" à "V"?

Merci à vous tous
 

Pièces jointes

  • download excel.xlsm
    825.5 KB · Affichages: 7

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Alain,
Pas bien tout compris, mais il me semble que ce grand OU est équivalent à :
VB:
NB.SI(P18:V25;O26)>1
Ainsi si au moins une des cellules de P18 à V25 contient la valeur de O26 alors la condition est vraie.
Donc la formule complète pourrait être :
Code:
=SI(MIN(E17:E26)>G26;"";SI(NB.SI(P18:V25;O26)>1;"";SI(C26>O26;O26;"")))
 

alain.pierrephie

XLDnaute Occasionnel
Bonjour Alain,
Pas bien tout compris, mais il me semble que ce grand OU est équivalent à :
VB:
NB.SI(P18:V25;O26)>1
Ainsi si au moins une des cellules de P18 à V25 contient la valeur de O26 alors la condition est vraie.
Donc la formule complète pourrait être :
Code:
=SI(MIN(E17:E26)>G26;"";SI(NB.SI(P18:V25;O26)>1;"";SI(C26>O26;O26;"")))
Merci à toi de t'occuper de moi.
Ça ne marche pas car quand tu incrémentes tu peux voir que en "P27" ça me répète 107,40, ce que je veux justement éviter. As tu vu le fichier joint ?
 

alain.pierrephie

XLDnaute Occasionnel
Dites plutôt ce que vous chercher à faire car par ex :
VB:
OU(Q25=O26;R25=O26;S25=O26;T25=O26;U25=O26;V25=O26)
est équivalent à :
Code:
SI(NB.SI(Q25:V25;O26)>1)
Dans les deux cas, si une des cellules de la plage vaut O26 alors la réponse est VRAI.
D'accord mais pourquoi dans ce cas là si je met ma chaine de "si(ou" très longue elle ne me répète pas 117,40 alors que votre formule SI(NB.SI(Q25:V25;O26)>1) , elle , me remet 117,40 ?
je ne sais pas répondre a cette interrogation
 

alain.pierrephie

XLDnaute Occasionnel
Oups, évidemment. Avec >1 il en faut au moins deux. :mad: C'est >=1 :
essayez :
VB:
=SI(MIN(E17:E26)>G26;"";SI(NB.SI(P18:V25;O26)>=1;"";SI(C26>O26;O26;"")))
ou
=SI(MIN(E17:E26)>G26;"";SI(NB.SI(P18:V25;O26)>0;"";SI(C26>O26;O26;"")))
Désolé.
Rôô punaise c'est exactement ce que je voulais. Comme j'ai plein d'autres à mettre et que ça me prendrais deux plombes pour mettre mes si(ou avec ta formule je vais faire ça rapidos.
Encore une fois Sylvanu tu m'a tiré une épingle du pied (tu m'as déjà dépanné si tu te rappelles)
En tout cas merci infiniment je vais pouvoir bosser sans me noyer dans mes formules si(ou à rallonge
Merci Sylvanu et bon WE à toi
Bise
Alain
 

Statistiques des forums

Discussions
312 178
Messages
2 085 980
Membres
103 079
dernier inscrit
sle