Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour à tous,
J'ai l'objectif de calculer la moyenne de dossiers reçus sur les 10 dernières semaines, à partir de la date de fin de la sélection (max(Date)).
Mes filtres sont les suivants : ANNÉE, MOIS, SEMAINE
Exemple : Si je sélectionne le mois d'août, je souhaite afficher la moyenne des dossiers reçus depuis les 10 dernières semaines à partir du 31 août inclus.
Voici ma formule sur les 21 derniers jours :
avg({1<[Date]={">=$(=date(max(Date)-20))<$(=max(Date)+1)"}>}
aggr(
count(distinct if([Date de réception]) = [Date], [Numéro de dossier])),
Date)
)
Voici les deux problèmes rencontrés :
Merci à vous.
Essaye ça :
avg({1<[Date]={">=$(=date(max(Date)-20))<$(=max(Date)+1)"}>}
aggr(
count({1} distinct if([Date de réception]) = [Date], [Numéro de dossier])),
Date)
)
Il faut également spécifier que ton Count ignore les sélections effectuées.
Tu dis que tu veux la moyenne des 10 dernières semaines, mais tu ne précises pas quelle moyenne. Ici tu auras la moyenne journalière.
A mon avis, créé une variable vDateRef avec des IF.
Si tu as sélectionné une semaine, alors tu calcules weekend(),
Sinon si tu as un mois de sélectionné, alors tu calcules monthend()
Sinon si tu as sélectionné Annee, alors tu calcules yearend()
Pour voir si une semaine est sélectionné, tu fais IF(len(SEMAINE)>0, weekend(SEMAINE) etc...
Enfin tu appelles cette variable dans ton set analysis : $(vDateRef)
Kevin
Merci de ta réponse Kevin.
Le soucis, c'est qu'il est possible de sélectionner plusieurs semaines ou plusieurs mois, ou mélanger des semaines et des mois, etc.
Prends les valeurs max si plusieurs semaines de sélectionnées. Idem pour les mois.
Essaye ça :
avg({1<[Date]={">=$(=date(max(Date)-20))<$(=max(Date)+1)"}>}
aggr(
count({1} distinct if([Date de réception]) = [Date], [Numéro de dossier])),
Date)
)
Il faut également spécifier que ton Count ignore les sélections effectuées.
Tu dis que tu veux la moyenne des 10 dernières semaines, mais tu ne précises pas quelle moyenne. Ici tu auras la moyenne journalière.
Cher Sébastien,
C'est parfait. Ta formule fonctionne dans tous les cas possibles.
Il ne me reste plus qu'une seule problématique :
Comment prendre les 10 dernières semaines au lieu des 21 derniers jours ?
Tu peux pas simplement faire la même chose mais pour 10 semaines, donc 70 jours ?
Ou tu veux des semaines entières?
Définit exactement ce que tu veux en fonction de Max(Date) avec un 1 ou 2 exemples:
Je veux précisément prendre 10 semaines entières.
Ok, donc tu auras 9 semaines entières plus la partie de la semaine dans laquelle se trouve max(Date).
avg({1<[Date]={">=$(=WeekStart(Max(Date)-63))<$(=max(Date)+1)"}>}
aggr(
count({1} distinct if([Date de réception]) = [Date], [Numéro de dossier])),
Date)
)
Merci Sébastien.
Tout fonctionne parfaitement.