Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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
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 ?
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
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.
 

alain.pierrephie

XLDnaute Occasionnel
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
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Oups, évidemment. Avec >1 il en faut au moins deux. 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é.
 

alain.pierrephie

XLDnaute Occasionnel
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
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…