Automatiser calculs avec des dates

Fermé
badarledur Messages postés 397 Date d'inscription jeudi 1 janvier 2009 Statut Membre Dernière intervention 22 décembre 2023 - 9 juin 2019 à 07:58
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 - 10 juin 2019 à 11:37
Bonjour,

Dans l’exemple ci-dessous :

Janvier : =SOMMEPROD(($AA$1:$AA$25002>="01/01/2019"*1)*($AA$1:$AA$25002<"01/02/2019"*1))

Février :
=SOMMEPROD(($AA$1:$AA$25002>="01/02/2019"*1)*($AA$1:$AA$25002<"01/03/2019"*1))

Mars :
=SOMMEPROD(($AA$1:$AA$25002>="01/03/2019"*1)*($AA$1:$AA$25002<"01/04/2019"*1))

Avril :
=SOMMEPROD(($AA$1:$AA$25002>="01/04/2019"*1)*($AA$1:$AA$25002<"01/05/2019"*1))

Etc…

Existe-t-il une formule, ou une autre solution pour éviter d’écrire à chaque fois « >dd/mm/aa » et « <dd/mm/aa » ?

En effet, ce tableau ne fonctionnerait que pour 2019. En 2020, il faudrait que je vienne changer manuellement chaque année de chaque formule…

Remarques : les données « dates » du tableau à partir duquel la formule s’applique sont exprimées de la manière suivante « 01/01/2019 ».

Par avance merci,

Cordialement,

7 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié le 9 juin 2019 à 08:19
Bonjour
pour calculer par mois avec SOMMEPROD et remplacer vos dates:
Janvier :
=SOMMEPROD((MOIS($AA$1:$AA$25002)=1)*1)
avec 1,ou 2 ou selon le mois
ou alors si vous avez un tableau à tirer:
=SOMMEPROD((MOIS($AA$1:$AA$25002)=LIGNE($A1))*1)
qui va s'ajuster sur les 12 lignes en tirant vers le bas
crdlmnt

1
PHILOU10120 Messages postés 6368 Date d'inscription lundi 16 avril 2012 Statut Contributeur Dernière intervention 22 avril 2024 796
9 juin 2019 à 09:29
Bonjour Badarledur, Bonjour Vaucluse

Une idée, je ne sais pas si j'ai bien compris votre problème ?

Ma solution

=SOMMEPROD((MOIS($A$1:$A$25)=$E$1)*(ANNEE($A$1:$A$25)=$F$1)*($B$1:$B$25))

E1 = 1 le mois
F1 = 2019 l'année

Dans votre formule vous faites la somme de quoi?
Dans mon exemple la somme de la colonne B
1
badarledur Messages postés 397 Date d'inscription jeudi 1 janvier 2009 Statut Membre Dernière intervention 22 décembre 2023 5
Modifié le 9 juin 2019 à 09:16
Bonjour,

merci pour ces solutions:

- la première : erreur de valeur

- la deuxième : "nous avons rencontré une erreur dans cette formule. Etes vous en train de taper une formule? Lorsque le premier caractère est un signe (=) ou ..........

Une idée du pourquoi du comment?
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié le 9 juin 2019 à 10:03
attention si vous avez copié/collé depuis le message, il doit y avoir un blanc parasite en fin de formule. Voyez ici
https://mon-partage.fr/f/hSoCntxs/
par ailleurs si la formule renvoie #VALEUR c'est que vous avez des cellules
textes dans le champ
ça expliquerait le besoin de *1 dans vis premières formules. Dans ce cas essayez
soit de copier une cellule vide, de sélectionner le champ et collage spécial "ajouter"
ou entrez 1 dans une cellule copier / collage spécial "multiplication"
bien entendu cette formule ne fait que compter le nombre de cellules avec la date dans le mois choisi
crdlmnt
0
badarledur Messages postés 397 Date d'inscription jeudi 1 janvier 2009 Statut Membre Dernière intervention 22 décembre 2023 5
9 juin 2019 à 16:05
Merci pour vos retours. Je ne parviens pas à adapter vos solutions à mon problème.

Je n'ai pas été assez précis sur ma requête.

Avec ce fichier, je pourrais être plus clair
https://www.cjoint.com/c/IFjofcy62x2

Comment puis-je intégrer M11, de la même manière que M7 dans mes formules situées en T8, T9,T10,T11?
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 394
Modifié le 9 juin 2019 à 16:23
Votre fichier en retour , en supposant que l'astérisque dans la validation "période" doive englober tous les mois de la liste
https://mon-partage.fr/f/wCtrLIfH/
pour adapter, ajuster bien les champs au nombre de lignes utiles , sinon la formule risque d'être assez lourde
crdlmnt

0
badarledur Messages postés 397 Date d'inscription jeudi 1 janvier 2009 Statut Membre Dernière intervention 22 décembre 2023 5
9 juin 2019 à 17:45
Là, c'es trop technique pour moi ^^

Je ne comprends pas ta formule.

Mais en tout cas, elle fonctionne. Presque...

Quand les deux critères sont sur "*", effectivement pour "tout", le calcul ne se fait pas.

Merci !
0
badarledur Messages postés 397 Date d'inscription jeudi 1 janvier 2009 Statut Membre Dernière intervention 22 décembre 2023 5
9 juin 2019 à 18:01
ou même juste quand "sexe" est sur tout
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
9 juin 2019 à 19:17
alors mieux vaut pour traiter la combinaison des "tout" utiliser un tableau croisé dynamique avec ses filtres en rajoutant pour la simplicité des sélections une colonne qui donne le mois selon la date (en E dans le modèle joint)

sinon les formules vont être à s'arracher les cheveux, sauf si besoin, à rajouter une colonne qui code le choix Mais le TCD est sans doute une bonne option
revenez si besoin
https://mon-partage.fr/f/Vw6o9w4d/
crdlmnt
0
badarledur Messages postés 397 Date d'inscription jeudi 1 janvier 2009 Statut Membre Dernière intervention 22 décembre 2023 5
10 juin 2019 à 09:56
OK...Dommage. Je pensais qu'il existerait une solution type :/

Je n'aime pas trop les tcd. Ils ne s'actualisent pas tout seuls.

Il faut à chaque fois, venir activer manuellement, des "nouveaux filtres"...

En tout cas, merci à tous pour votre aide!
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié le 10 juin 2019 à 10:48
Il y a toujours une solution par formule, mais la complexité des combinaisons d'options TOUS en variante avec les autres sélections entraîne des complications trop lourdes pour un bon fonctionnement.
Alors du VBA peut être, mais ça n'est pas dans mon domaine
Quant au TCD vous pouvez avec l'onglet "OUTIL DE TCD" qui s'affiche quand vous le sélectionnez, et via la petite flèche en dessous de l'icone "Actualiser" aller dans "propriétés de connexions" et programmer une actualisation automatique à l'ouverture du fichier, et aussi à une cadence pouvant descendre à la minute
crdlmnt
0
badarledur Messages postés 397 Date d'inscription jeudi 1 janvier 2009 Statut Membre Dernière intervention 22 décembre 2023 5
10 juin 2019 à 10:53
Je vais regarder ce que vous me proposez pour le tcd.

Merci
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
10 juin 2019 à 11:37
Bonjour,

Par formule (pas trop longue) en T8 et à tirer vers le bas
=SI($M$11="*";NB.SI.ENS($G$7:$G45;$M$7;$I$7:$I45;$S8);SI($M$7="*";SOMMEPROD((TEXTE($F$7:$F45;"mmmm")=$M$11)*($I$7:$I45=$S8));SOMMEPROD((TEXTE($F$7:$F45;"mmmm")=$M$11)*($G$7:$G45=$M$7)*($I$7:$I45=$S8))))

A tester

Cdlt
0