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

sommeprod et #valeur!

  • Initiateur de la discussion Initiateur de la discussion Goose
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Goose

XLDnaute Occasionnel
Bjr,
j'ai un problème de #VALEUR! en feuille "Synthèse" dû à une formule en feuille "T2011":
=SI(J20+I20>MAINTENANT();"";SOMME(L20*5;M20*3;N20* 2;O20*3))
en remplaçant le "" par 0, je régle le problème, mais je fausse le classement !!
pouvez-vous m'aider ?
ci-joint le fichier
@+
 

Pièces jointes

Re : sommeprod et #valeur!

Bonsoir,

Une proposition de correction en T9 :

Code:
=SI(SOMMEPROD((INDIRECT("'"&$A9&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$P$14:$P$40");3)=V9);INDIRECT("'"&$A9&"'!$U$14:$U$40"))=0;
SOMMEPROD((INDIRECT("'"&$A9&"'!$P$14:$P$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$V$14:$V$40");3)=V9);INDIRECT("'"&$A9&"'!$S$14:$S$40"));
SOMMEPROD((INDIRECT("'"&$A9&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$P$14:$P$40");3)=V9);INDIRECT("'"&$A9&"'!$U$14:$U$40")))

J'ai mis cette partie du SOMMEPROD ;INDIRECT("'"&$A9&"'!$U$14:$U$40") à la fin en la faisant précéder d'un ;

Même principe pour U9

à adapter pour les autres lignes

@+
 
Re : sommeprod et #valeur!

Bonjour,

S'il s'agit d'éviter l'affichage du zéro, tu peux passer par exemple par un format personnalisé de ce type :

Code:
Standard;-Standard;

Ainsi, les zéros n'apparaissent plus

@+
 
Re : sommeprod et #valeur!

Merci Tibo mais malheureusement cette solution me crée un résultat en R9 et ne fera plus apparaitre le 0 en cas d'un score nul !!
il n'y a pas un moyen de donner un résultat "" dans la formule en T9 ?
@+
 
Re : sommeprod et #valeur!

Bonjour,

On peut reprendre le test dans un autre test. Ca allonge la formule, mais ça devrait donner ce que tu veux :

Code:
=SI(SI(SOMMEPROD((INDIRECT("'"&$A9&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$P$14:$P$40");3)=V9);INDIRECT("'"&$A9&"'!$U$14:$U$40"))=0;
SOMMEPROD((INDIRECT("'"&$A9&"'!$P$14:$P$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$V$14:$V$40");3)=V9);INDIRECT("'"&$A9&"'!$S$14:$S$40"));
SOMMEPROD((INDIRECT("'"&$A9&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$P$14:$P$40");3)=V9);INDIRECT("'"&$A9&"'!$U$14:$U$40")))=0;"";SI(SOMMEPROD((INDIRECT("'"&$A9&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$P$14:$P$40");3)=V9);INDIRECT("'"&$A9&"'!$U$14:$U$40"))=0;
SOMMEPROD((INDIRECT("'"&$A9&"'!$P$14:$P$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$V$14:$V$40");3)=V9);INDIRECT("'"&$A9&"'!$S$14:$S$40"));
SOMMEPROD((INDIRECT("'"&$A9&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$P$14:$P$40");3)=V9);INDIRECT("'"&$A9&"'!$U$14:$U$40"))))
Il y a peut-être plus simple, mais ça demande à analyser la formule pour voir s'il n'y a pas moyen d'avoir une autre approche.

@+
 
Re : sommeprod et #valeur!

Effectivement Tibo, cela résoud le problème en R9, mais je n'arrive pas faire apparaitre le 0 quand un score par exemple est de 0-15 ou 42-0 !! peut être en intervenant sur la formule en feuille "T2010":
=SI(J20+I20>MAINTENANT();"";SOMME(L20*5;M20*3;N20* 2;O20*3))
????
@+
 
Re : sommeprod et #valeur!

bon je crois avoir trouvé...
Code:
En T9:
=SI(OU(SOMMEPROD((INDIRECT("'"&$A9&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$P$14:$P$40");3)=V9);INDIRECT("'"&$A9&"'!$J$14:$J$40"))>AUJOURDHUI();SOMMEPROD((INDIRECT("'"&$A9&"'!$P$14:$P$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$V$14:$V$40");3)=V9);INDIRECT("'"&$A9&"'!$J$14:$J$40"))>AUJOURDHUI());"";SI(SOMMEPROD((INDIRECT("'"&$A9&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$P$14:$P$40");3)=V9);INDIRECT("'"&$A9&"'!$U$14:$U$40"))=0;
SOMMEPROD((INDIRECT("'"&$A9&"'!$P$14:$P$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$V$14:$V$40");3)=V9);INDIRECT("'"&$A9&"'!$S$14:$S$40"));
SOMMEPROD((INDIRECT("'"&$A9&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A9&"'!$P$14:$P$40");3)=V9);INDIRECT("'"&$A9&"'!$U$14:$U$40"))))
Merci Tibo de m'avoir éclairé !!
@+
 
Re : sommeprod et #valeur!

re,

On peut tester si la feuille existe avec INDIRECT :

Pour T14, ça donne ceci :

Code:
=SI(ESTNUM(INDIRECT("'"&$A14&"'!A1"));SI(OU(SOMMEPROD((INDIRECT("'"&$A14&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A14&"'!$P$14:$P$40");3)=V14);INDIRECT("'"&$A14&"'!$J$14:$J$40"))>MAINTENANT();SOMMEPROD((INDIRECT("'"&$A14&"'!$P$14:$P$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A14&"'!$V$14:$V$40");3)=V14);INDIRECT("'"&$A14&"'!$J$14:$J$40"))>MAINTENANT());"";SI(SOMMEPROD((INDIRECT("'"&$A14&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A14&"'!$P$14:$P$40");3)=V14);INDIRECT("'"&$A14&"'!$U$14:$U$40"))=0;
SOMMEPROD((INDIRECT("'"&$A14&"'!$P$14:$P$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A14&"'!$V$14:$V$40");3)=V14);INDIRECT("'"&$A14&"'!$S$14:$S$40"));
SOMMEPROD((INDIRECT("'"&$A14&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A14&"'!$P$14:$P$40");3)=V14);INDIRECT("'"&$A14&"'!$U$14:$U$40"))));"")

Principe : avec SI(ESTNUM(INDIRECT("'"&$A14&"'!A1")), on teste si la cellule A1 de la feuille souhaitée retourne une valeur numérique. Si oui, on applique la formule, si non, on retourne ""

@+
 
Re : sommeprod et #valeur!

Bonjour,

Ca me semble normal dès lors que la feuille T2012 n'existe pas.

Quel message attends-tu si la feuille n'existe pas ?

Tu peux l'indiquer à la fin de la formule en adaptant le ""

@+
 
Re : sommeprod et #valeur!

re,

Toute petite correction en T4 (il manquait un *1) :

Code:
=SI(ESTNUM(INDIRECT("'"&$A4&"'!A1")*1);SI(OU(SOMMEPROD((INDIRECT("'"&$A4&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A4&"'!$P$14:$P$40");3)=V4);INDIRECT("'"&$A4&"'!$J$14:$J$40"))>MAINTENANT();SOMMEPROD((INDIRECT("'"&$A4&"'!$P$14:$P$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A4&"'!$V$14:$V$40");3)=V4);INDIRECT("'"&$A4&"'!$J$14:$J$40"))>MAINTENANT());"";SI(SOMMEPROD((INDIRECT("'"&$A4&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A4&"'!$P$14:$P$40");3)=V4);INDIRECT("'"&$A4&"'!$U$14:$U$40"))=0;
SOMMEPROD((INDIRECT("'"&$A4&"'!$P$14:$P$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A4&"'!$V$14:$V$40");3)=V4);INDIRECT("'"&$A4&"'!$S$14:$S$40"));
SOMMEPROD((INDIRECT("'"&$A4&"'!$V$14:$V$40")=$P$2)*(GAUCHE(INDIRECT("'"&$A4&"'!$P$14:$P$40");3)=V4);INDIRECT("'"&$A4&"'!$U$14:$U$40"))));"")

On suppose que la cellule A1 de chaque feuille est toujors vide.

@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
637
Réponses
7
Affichages
689
P
Réponses
7
Affichages
953
Pilliars
P
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…