De somme.si.ens à sommeprod.

Résolu/Fermé
francesco - 28 mai 2014 à 08:37
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 28 mai 2014 à 17:48
Bonjour,

J'ai une formule de Excel 2010 avec SOMME.SI.ENS que je doit transcrire en SOMMEPROD car je doit partager mon fichier sous format 2003.

Ma formule est =SOMME.SI($B$3:$B$10;F3;$C$3:$C$10)+SOMME.SI.ENS($C$3:$C$10;$B$3:$B$10;"*"&F3&"*";$B$3:$B$10;"*+*")/2

J'ai essayer une transcription qui me donne : =SOMME.SI($B$3:$B$10;F3;$C$3:$C$10)+SOMMEPROD(($B$3:$B$10="*"&F3&"*")*($B$3:$B$10="*+*")*($C$3:$C$10)/2)

Mon résultat dans le 1 er cas est de 350€ or dans le second j'ai 100€, je ne comprend pas !

Merci pour vos solution

PS pour info j'ai en F3 = LOG. ; B3 = LOG.+LIO ; B6 = LOG. ; C3 = 500 ; C6 = 100
Mon calcul consiste a prendre le prix de LOG. réel c'est a dire que quand il y a un + je divise en 2 le prix

Cordialement

Francesco

5 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
28 mai 2014 à 08:49
Bonjour
vous ne pouvez pas utilisez le type "* x*" avec un signe égal

voyez la formule comme suit, en utilisant une condition sous NB.SI
=SOMMEPROD((NB.SI(B1:B10;"*+*"))*1)
=SOMME.SI($B$3:$B$10;F3;$C$3:$C$10)+SOMMEPROD((SI(NB.SI($B$3:$B$10;"*"&F3&"*");1)*(SI(NB.SI($B$3:$B$10;"*+*");1)*($C$3:$C$10)/2)


attention à tous les éléments!!

crdlmnt
0
Merci, je n'ai plus le #valeur? ou #Nom? .... Mon problème est que le chiffre lu n'est pas exacte, au lieu de m'afficher 350 résultat correct il m'affiche 1700

d'ou peu venir l'erreur ?

Cordialement
0
tontong Messages postés 2549 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 23 avril 2024 1 054
28 mai 2014 à 14:27
Bonjour,
J'ai joué aux devinettes avec 350!
En supposant que F3 doit être suivi directement du signe + pour valider la condition divisé par 2:

=SOMME.SI($B$3:$B$10;F3;$C$3:$C$10)+SOMMEPROD((ESTNUM(CHERCHE("*"&F3&"+"&"*";$B$3:$B$10))*($C$3:$C$10)/2))

Si le caractère de remplacement "*" n'est pas requis avant F3

=SOMME.SI($B$3:$B$10;F3;$C$3:$C$10)+SOMMEPROD((ESTNUM(CHERCHE(F3&"+"&"*";$B$3:$B$10))*($C$3:$C$10)/2))

S'il faut respecter les majuscules, remplacer Cherche par Trouve.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
Modifié par Vaucluse le 28/05/2014 à 15:08
Re
essayez celle ci, inspirée de la très bonne idée de notre ami tontong, mais qui fonctionne quelque soit la position de F3 dans le texte
(il semble, sauf erreur, que pour celle de tontong, il faille que F3 soit en début de texte, avant le +)

=SOMME.SI($B$3:$B$10;F3;$C$3:$C$10)+SOMMEPROD((NON(ESTERREUR(TROUVE("+";$B$3:$B$10)))*(NON(ESTERREUR(TROUVE(F3;$B$3:$B$10)))*($C$3:$C$10))))/2

crdlmnt

Errare humanum est, perseverare diabolicum
0
Merci a tous c'est exactement ce que je recherchai vous avez réussi à répondre a mon problème !!! C'est génial ça me simplifie la vie ...

Cordialement Francesco
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
28 mai 2014 à 17:48
Ok, bonne route
je passe le sujet en résolu
crldmnt
0