Signaler

Somme.si avec un critère de date (mois/année) [Résolu]

Posez votre question Jacq66 10Messages postés vendredi 27 janvier 2017Date d'inscription 21 juin 2017 Dernière intervention - Dernière réponse le 10 févr. 2017 à 21:27 par Jacq66
Bonjour,

La feuille comprend divers champs monétaires et 1 champ de date format jj/mm/aa.
Comment puis-je faire pour que le "critère" de la fonction somme.si, soit une période de date mois et année, pour regrouper toutes les opérations faites dans cette période, par ex janvier2017, fevrier 2017,.... , janvier 2018, etc... ?

J'espère avoir été clair....

Merci d'avance pour votre aide
Afficher la suite 
Utile
+0
plus moins
Bonsoir
Fait en VBA ; Voyez si cela vous convient
http://www.cjoint.com/c/GBixvpdeYlA

Cordialement
Jacq66 10Messages postés vendredi 27 janvier 2017Date d'inscription 21 juin 2017 Dernière intervention - 10 févr. 2017 à 10:15
merci... mais comment je fais pour visualiser votre fichier...

Désolé...
Répondre
Vaucluse 20111Messages postés lundi 23 juillet 2007Date d'inscription ContributeurStatut 9 août 2017 Dernière intervention - 10 févr. 2017 à 11:28
Bonjour
pour accéder au fichier de julia namor, cliquez sur le lien.
Mais faire du VBA pour cette question est peut être un peu trop compliqué.
Avez vous testé la formule au message ci dessous
http://www.commentcamarche.net/forum/affich-34347678-somme-si-avec-un-critere-de-date-mois-annee#2
crdlmnt
Répondre
Donnez votre avis
Utile
+0
plus moins
Bonjour


=SOMMEPROD((ANNEE(Champ date)=2017)*(MOIS(champ date)=1)*(champ à sommer))

1 pour janvier, 2 pour février etc...

limitez les champs à la hauteur utile pour éviter de charger le fichier (ex A1:A1000, mais pas A:A)

ou à la place de 1 et 2017, les adresses de cellule qui contiennent les valeurs année / mois

ou si vous avez des dates limites en Z1 et Z2

=SOMMEPROD((Champ date>=Z1)*(Champ date<=Z2)*(champ à sommer))

ou encore dans ce cas avec Excel à partir de 2007

=SOMME.SI.ENS(champ à sommer;champ date;">="&Z1;champ date;"<="&Z2)


crdlmnt

Jacq66 10Messages postés vendredi 27 janvier 2017Date d'inscription 21 juin 2017 Dernière intervention - 10 févr. 2017 à 15:21
Bonjour et merci....

La fonction SOMMEPROD ne fonctionne pas... Faut-il le signe" * " , ou séparer simplement par" ; "...

SOMME.SI.ENS ne fonctionne pas non plus: puis-je utiliser champ date "=" 2017 et champ date "=" 1 ?

merci d'avance
Répondre
Donnez votre avis
Utile
+0
plus moins
bonjour

Mon fichier revu et amélioré. Tous les tests fonctionnent de mon coté. A adapter

http://www.cjoint.com/c/GBkoUiJROpA

PS;Pour Vaucluse
Mais faire du VBA pour cette question est peut être un peu trop compliqué
Je m'améliore , je m'améliore.....

Cordialement
Donnez votre avis
Utile
+0
plus moins
Jacq

la fonction est écrite correctement, je confirme les * aux bons endroits
SOMME.SI.ENS aussi, mais à partir d'Excel 2007 seulement

si cela ne fonctionne pas, c'est peut être que vos dates ne sont pas en format date. Avez vous vérifié?
(passez les cellules en standard et vérifiez que'elles affichent bien un nombre à 5 chiffres)
Si problème, déposez un modèle sans données confidentielles ici et revenez coller ici le lien créé par le site

https://mon-partage.fr

.. ou alors précisez ce qui ne fonctionne pas, que renvoi Excel?

Julia Namor
Il n'y a rien à améliorer dans votre proposition, que je serais bien incapable de traiter de cette façon. Et donc en conséquence incapable aussi de formuler la moindre critique.

Je me suis mal exprimé, je voulais simplement dire que VBA n'était peut être pas la solution là où une simple formule standard peut répondre à la question, ce qui est plus à la portée de tout le monde d'une part et fonctionne en continu sans les boutons d'autre part.

Bien cordialement
Jacq66 10Messages postés vendredi 27 janvier 2017Date d'inscription 21 juin 2017 Dernière intervention - 10 févr. 2017 à 17:50
Merci de votre aide.....

Le format date est OK et la formule renvoie 0... je ne trouve pas !!!

le lien pour le fichier
https://mon-partage.fr/f/JImNozQC/
Répondre
Vaucluse 20111Messages postés lundi 23 juillet 2007Date d'inscription ContributeurStatut 9 août 2017 Dernière intervention - 10 févr. 2017 à 18:17
Votre formule n'est pas écrite correctement:, lmes parenrhèses sont mal calées
écrivez:
=SOMMEPROD((ANNEE(Journal!J3:J43)=2017)*(MOIS(Journal!J3:J43)=1))
attention aux parenthèses.
Cette formule une fois correcte, renvoi 2 (le nombre de date en janvier 2017)

pour pouvoir la tirer sur les 12 mois sans la modifier écrivez:

=SOMMEPROD((ANNEE(Journal!J3:J43)=2017)*(MOIS(Journal!J3:J43)=LIGNE(A1)))

LIOGNE(A1) vaut 1 dans la 1° cellule, devient ligne (A2) et vaut 2 dans la seconde etc....

Par ailleurs si vous voulez cumuler des montants il faut rajouter le champ à sommer dans la formule

Par exemple pour sommer les montants de la colonne D de journal en janvier 2017:

=SOMMEPROD((ANNEE(Journal!$J$3:$J$43)=2017)*(MOIS(Journal!$J$3:$J$43)=1)*(Journal!$D$3:$D$43))

attention aux $ aux bons endroits avant de tirer la formule

crdlmnt
Répondre
Jacq66 10Messages postés vendredi 27 janvier 2017Date d'inscription 21 juin 2017 Dernière intervention - 10 févr. 2017 à 21:27
SUPER !!!!!

Merci beaucoup et bravo pour votre patience...
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !