Formule extraction année [Résolu/Fermé]

Signaler
Messages postés
90
Date d'inscription
lundi 4 juin 2012
Statut
Membre
Dernière intervention
1 novembre 2019
-
 jl00700 -
Bonjour,


J’ai un tableau composé entre autre d’une colonne avec dates (A7 :A2500), d’une colonne montant (H7 :H2500) et une colonne Catégorie (C7 :C2500).
Je développe sur une autre feuille un tableau de bord où il m’est demandé d’effectuer une récap par mois, l’autre depuis le début de l’année pour chaque catégorie.
Conformément au cahier des charges, l’utilisateur doit rester pilote de son tableau de bord et c’est lui qui saisira le mois et l’année dans une cellule prévue à cet effet sur ledit tableau de bord (J3).
M’inspirant d’une réalisation antérieure, j’ai réussi à faire ceci pour la récap mensuelle :
=SOMME.SI.ENS(Base!H7:H2500;Base!C7:C2500;"Composant_XH";Base!A7:A2500;">="&DATEVAL("01/"&MOIS(Feuil1!J3)&"/"&ANNEE(Feuil1!J3)))
Je n’arrive pas à renouveler l’opération pour la récap annuelle…
J’ai effectué différentes tentatives dont TCD mais je ne suis pas encore assez opérationnel pour ce type de réalisation. Je souhaite donc rester dans une formule classique.
Je vous remercie de votre aide.
Cordialement
JL00700

2 réponses

Messages postés
24800
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
26 janvier 2020
4 996
Bonjour
pour ce qui est de détecter un élément partiel dans un champ de référence, mieux vaut utiliser SOMMEPROD:

=SOMME.PROSD(Base!C7:C2500="Composant_XH")*(ANNEE(A7:A2500)=Feuil1!J3)*(Base!H7:H2500))
Ceci si on suppose que l'année cherchée est directement inscrite en Feuil1!J3

si toutefois Feuil1!J3 est une date:

=SOMME.PROSD(Base!C7:C2500="Composant_XH")*(ANNEE(A7:A2500)=ANNEE(Feuil1!J3))*(Base!H7:H2500))

crdlmnt

JL00700
Messages postés
90
Date d'inscription
lundi 4 juin 2012
Statut
Membre
Dernière intervention
1 novembre 2019

J'ai reconstitué un fichier d'essai... j'espère qu'il sera conforme aux attentes.
Par avance merci.
Amicalement

https://www.cjoint.com/c/HCztPFpxa6S
Vaucluse
Messages postés
24800
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
26 janvier 2020
4 996
Salut
si ton fichier est comme ton modèle, normal que ça ne fonctionne pas
  • en D5 feuil2 en fin de formule tu vas calculer la dernière date limite avec

DATE( Feuil1!K3;12;31)alors que ton K3 est en feuil2 ??
  • et pour utiliser SOMMEPROD, il ne faut pas qu'il y ait de texte dans le champ date ou le champ à sommer, et donc quand tu commence en ligne 2 (avec A2:A2500 par exemple, tu inclus les titres de colonne qui, sont bien, eux, des textes).

vois le fichier en retour, avec deux solutions qui semblent fonctionner
quelques autres remarques:
  • _ne mets pa le nom de feuille quand les cellules sont dans la même feuille que la formule
  • _bloque les adresses pour pouvoir tirer la formule sur la hauteur de ta liste sans que les champs de référence se modifient
  • _utilise l'adresse de cellule ou tn as placé les textes (colonne B) au lieu de taper le texte cherché dans la formule


avec tout ça, tu peux simplement tirer la formule vers le bas
vois comme c'est écrit dans le modèle , surtout avec les signes $

https://mon-partage.fr/f/QLhAnhmP/

reviens si ça ne convient pas, mais ça a l'air de fonctionner

Bonne journée
crdlmnt
JL00700
Messages postés
90
Date d'inscription
lundi 4 juin 2012
Statut
Membre
Dernière intervention
1 novembre 2019

Bonjour Vaucluse,
De bon matin je me suis remis sur l'ouvrage...
En m'apprêtant à te faire une réponse, je m'apperçois que tu étais également à pied d'oeuvre...
Je te livre tout de même mon constat matinal et j'examine tes conseils du jour.
Effectivement, il ne faut pas mettre le nom de feuille quand la formule est sur la feuille de travail.
Je crois que effectivement il y a un pb de format car si je cré deux nouvelles colonnes (moi et AN) avec format standart, pas de plantage et les résultats sont bon (ci-joint)...

https://www.cjoint.com/c/HCAgmvAhzwS

Je te tiens au courant.
Bonne journée.
Cordialement
jl00700
Vaucluse
Messages postés
24800
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
26 janvier 2020
4 996
J'ai modifié mon message entre temps, je ne pensais pas que tu serais déjà au boulot!
regarde le fichier joint et tu verras qu'il n'y devrait pas y avoir de problème
Ta formule en C5 va te sommer tous les mois en 12 (Décembre) sans différencier les années, je ne pense pas que ce soit ce que tu veux?
Bonsoir Vaucluse,
Je n'ai pas assez de mots pour te remercier et toutes ces connaissances acquises ces derniers temps me donne l'appétit pour réaliser d'autres projets.
Je dois reconnaître que tu y a été pour beaucoup !
A bientôt si je rencontre d'autres bébêtes !
Amicalement
jl00700
Messages postés
23231
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
26 janvier 2020
5 880
Bonjour,

c'est quand même plus simple avec un TCD. Fait en 30 s : https://www.cjoint.com/c/HCAnSCvzZjW.
Ca vaut le coup de passer 1/2h à les comprendre .

Tableau Croisé Dynamique (TCD) : http://www.mdf-xlpages.com/modules/smartsection/item.php?itemid=109
et
http://www.mdf-xlpages.com/modules/publisher/item.php?itemid=130
eric
Bonjour erilic,
Merci pour ces différents liens...
C'est promis, je vais m'y mettre.
Heureusement, à mon âge (bientôt 70 balais) je suis curieux et toujours heureux d'apprendre notamment au travers d'Excel !
Cordialement
jl00700