Soome de certains elements dune plage a condition que
Bonjour, je souhaiterais effectuer de facon automatique la somme, pour chaque article (item) , des sorties de stock (voir Feuille January}, par projet . Par exemple, sur la feuille Gaurishankar, je voudrais pouvoir calculer de facon automatique la somme des sorties de black dal de la feuille January, sachant que la plage de donnees (sur la feuille January) peut s etendre de facon indeterminee. Merci beaucoup, ce serait pour faciliter le regards sur les consommations a des employes d une petite ong nepalaise, d ou la necessite d automatiser un maximum les operations et leur eviter de faire autre chose que de la saisie de donnees.
Merci encore.
Je vous joint une version 2007 et une en 97/03 en piece jointe
Bonjour
Mon excel 2003 ne lit pas les xlsx, mais ta solution est avec la fonction SOMMEPROD
Bonsoir
La formule de Base en E12 Feuille Gaurishankar serait
=SOMMEPROD((INDIRECT(E$11&"!$E$6:$E$29")=$B12)*(INDIRECT(E$11&"!$K$6:$K$29")="Gaurishankar")*(INDIRECT(E$11&"!$G$6:$G$29")))qui s'incrémente vers le bas et se Copie-Colle vers la droite.
La définition des Champs Dynamiques l'allonge un petit peu. Apparemment, c'est la colonne C des Feuilles mois qui sert de repére pour les autres formules et nous l'utiliseront également pour définir les Champs Dynamiques dans la fonction SOMMEPROD.
La formule en E12 devient
=SOMMEPROD((INDIRECT(E$11&"!$E$6:$E$"&NBVAL(INDIRECT(E$11&"!$C:$C"))+5)=$B12)*(INDIRECT(E$11&"!$K$6:$K$"&NBVAL(INDIRECT(E$11&"!$C:$C"))+5)="Gaurishankar")*(INDIRECT(E$11&"!$G$6:$G$"&NBVAL(INDIRECT(E$11&"!$C:$C"))+5)))Si tu n'y arrives pas, fais signe, je t'enverrai le fichier
Cordialement
Alors merci, mais vraiment merci beaucoup.
J ai utilise ta formule initiale pour arriver au resultat et ca me donne ca.
Pour determiner les consommations de black dal pour Gaurishankar:
=SUMPRODUCT(((JANUARY!$E$6:$E$29)="BLACK DAL")*((JANUARY!$K$6:$K$29)="GAURISHANKAR")*(JANUARY!$G$6:$G$29))
Par contre, j avoue que pour les 2 autres versions de la formule que tu m as donne, j ai un peu de mal a comprendre le cheminement avec les INDIRECT et les NBval, puis egalement avec le reste pour etre honnete.
Si tu as un peu de temps pour m expliquer ce serait du bonus, sinon, merci beaucoup, ca va vraiment nous faire gagner du temps.
Merci a toi.
Bonjour
Si tu n'avais pas précisé:
sachant que la plage de donnees (sur la feuille January) peut s etendre de facon indetermineeJe me serai arrêté à la première formule.
L'intérêt de la Fonction INDIRECT est que le mois est récupéré sur ton tableau en ligne 11 et qu'une fois la formule écrite pour janvier, elle est écrite pour les 12 mois par un simple copier-coller.
Avec ta dernière formule, il faut la récrire pour changer JANUARY par FEBRUARY, etc soit 12 formules au lieu d'une.
Dans cette formule:
=SOMMEPROD((INDIRECT(E$11&"!$E$6:$E$29")=$B12)*(INDIRECT(E$11&"!$K$6:$K$29")="Gaurishankar")*(INDIRECT(E$11&"!$G$6:$G$29")))Le nom des Feuilles n'existe pas. puisqu'il est en E11, G11, etc.. où on le récupére grâce à INDIRECT.
Cette formule rédigée, tu as rajouté la difficulté du Champ dynamique (Nb de lignes variables )
Il est évident que ta dernière formule (que tu dois écrire 12 fois) doit de nouveau être modiftée à chaque ajout de ligne sur une des feuilles mois
En utilisant une nouvelle fois INDIRECT pour calculer le Nombre de ligne (Champ Dynamique) on adapte la fonction au nombre de lignes. et on obtiens cette fonction "barbare":
=SOMMEPROD((INDIRECT(E$11&"!$E$6:$E$"&NBVAL(INDIRECT(E$11&"!$C:$C"))+5)=$B12)*(INDIRECT(E$11&"!$K$6:$K$"&NBVAL(INDIRECT(E$11&"!$C:$C"))+5)="Gaurishankar")*(INDIRECT(E$11&"!$G$6:$G$"&NBVAL(INDIRECT(E$11&"!$C:$C"))+5)))Qui pour ceux qu'elle effraient peut être très simplifiée si on prévoit assez large (200 lignes, 10000 lignes, ce que l'on veut) par
=SOMMEPROD((INDIRECT(E$11&"!$E$6:$E$1000")=$B12)*(INDIRECT(E$11&"!$K$6:$K$1000")="Gaurishankar")*(INDIRECT(E$11&"!$G$6:$G$1000")))Cordialement