Moyenne des X dernières semaines

Bonjour à toutes et tous,

Avant tout merci pour l'aide que vous pourrez m'apporter. J'espère ne pas me tromper de rubrique, si oui faite le moi savoir et je déplacerai mon topic. J'ai farfouillé dans le forum et sur Google mais je n'ai pas trouvé de réponse alors je fais appel à vous !

Je cherche à réaliser une moyenne des 28 derniers jours de ventes de différents produits qui serait "dynamique" si on peut le dire ainsi. Aujourd'hui j'utilise une fonction MOYENNE classique sur les 4 dernières valeurs que je dois donc décaler toutes les semaines à chaque nouvel apport de données.

Existe-t-il une formule permettant de calculer cette moyenne des "x" dernières semaines (en l’occurrence 4)?

J'avais fait une tentative dans mon coin en essayer de jouer avec les 4 plus grosses valeurs des numéros de semaines pour n'obtenir que les plus récentes mais je n'y suis pas arrivé.

J'ai joint une version simplifiée du calcul que je cherche à effectuer.

Admettons que les ventes de la semaines 7 viennent de tomber et sont renseignées en colonne H. Aujourd'hui, en colonne J, je dois faire glisser ma plage de moyenne d'un cran vers la droite pour ne prendre que les semaines 4, 5 6 et 7 et ne plus considérer la semaine 3.

Je précise que si je bricole les formules basiques, je n'ai absolument aucune notion de VBA. Si la solution se trouve dans ce champs d'expertise, d'avance toutes mes excuses pour mon tâtonnement à venir. J'espère trouver une solution via une formule, aussi alambiquée soit-elle. Sinon je m'en accommoderai.

Merci d'avance pour le coup de pouce que vous pourrez m'apporter et très bonne journée à vous !

54forum-moy-28j.xlsx (9.49 Ko)

Hello, si tu ne maîtrise pas le VBA, je te propose la version avec formule pour que puisses l'adapter facilement

=MOYENNE(INDEX(Tableau1;LIGNE()-2;COLONNES(Tableau1)-3):INDEX(Tableau1;LIGNE()-2;COLONNES(Tableau1)))

Pré-requis : j'ai mis sous forme de tableau tes données (Tableau1)

INDEX te permet d'identidier les cellules comme si tu étais en L1C1 (avec des numéros de colonne au lieu des lettres)

COLONNES(tableau1) identifie le nombre de colonne de ton tableau (s'il y a x colonne ta dernière colonne porte le numéro x)

LIGNE() le numéro de ligne de ta formule auquel il faut retrancher les deux première.

le -3 correspond au décalage que tu souhaite affecter pour ta moyenne (les trois colonnes avant la dernière)

Voila j'espère que c'est clair pour toi et que tu pourras t'en servir facilement

il y a plus simple en VBA si tu préfère je te la posterai

Bonjour Neb520 et

Bonjour Boulii038,

On peut aussi écrire:

=MOYENNE(DECALER($B3;;EQUIV(MAX($B$2:$BB$2);$B$2:$BB$2;0)-4;1;4))

... mais il vaut mieux déplacer le tableau des moyennes sous le tableau par semaine (rien d'autre que les chiffres hebdomadaires ne doit figurer avant la colonne BB, pour le premier tableau).

Il faut -évidemment- au moins 4 semaines de renseignées

Bonjour Boulii038,

Bonjour U. Milité,

Merci à tous les deux pour vos retours rapides, me voilà comblé.

J'avoue avoir bêtement et simplement testé les deux formules et opté pour la solution d'U. Milité. J'ai adapté à mon fichier de travail et tout fonctionne. Cela m'évitera une étape et de potentiels oublis.

Un jour j'entrouvrirai les portes du VBA, les possibilités y ont l'air bien plus vastes et simplifiées !

Encore merci pour votre aide rapide !

Bonne journée à vous !

Un jour j'entrouvrirai les portes du VBA, les possibilités y ont l'air bien plus vastes et simplifiées !

Plus vastes, peut-être ... simplifiées, ça se saurait

Salut à tous !

@U. Milité aurais-tu travaillé sur le fichier, si oui pourrais-tu le poster ?

Je ne comprends pas très bien, pourquoi et comment on a besoin d'un second tableau, un peu du mal à visualiser, merci

Bonjour Neb520 et

Bonjour Boulii038,

On peut aussi écrire:

=MOYENNE(DECALER($B3;;EQUIV(MAX($B$2:$BB$2);$B$2:$BB$2;0)-4;1;4))

... mais il vaut mieux déplacer le tableau des moyennes sous le tableau par semaine (rien d'autre que les chiffres hebdomadaires ne doit figurer avant la colonne BB, pour le premier tableau).

Il faut -évidemment- au moins 4 semaines de renseignées

Bonjour dani0388,

Je dis simplement que, comme la formule proposée fait référence à la plage $B$2:$BB$2 ... il ne faut pas que d'autre données que les n° de semaines figurent dans cette zone (d'abord parce qu'une donnée numérique fausserait le résultat et ensuite, parce que si Neb520 ajoute des semaines, au fur et à mesure, il sera obligé de déplacer les tableau des moyennes, s'il reste là où il l'avait placé au départ) ... j'ai essayé de rendre ça "visible" dans le fichier

Merci je visualise mieux

C'est ce que je pensais en gros, mais c'est plus clair maintenant

Top !

Soyons fous, Neb520 a trouvé son bonheur…

Je me demande pourquoi la formule s'actualise uniquement lorsque je rentre un nouveau numéro de semaine et non une valeur

Je m'explique

En H3 j'ai la dernière valeur en date pour la semaine 7 pour le produit A

Pourquoi si je rentre des valeurs en I4, J4, K4 par exemple, la formule ne s'actualise pas ? Il faut que je rentre mon numéro de semaine ici 8, 9, 10

J'aime bien préparer mes tableaux à l'avance et si j'avais mis les numéros de semaine jusqu'à la fin, la formule serait moins pertinente ?

Une idée ?

Bonjour dani0388,

Je dis simplement que, comme la formule proposée fait référence à la plage $B$2:$BB$2 ... il ne faut pas que d'autre données que les n° de semaines figurent dans cette zone (d'abord parce qu'une donnée numérique fausserait le résultat et ensuite, parce que si Neb520 ajoute des semaines, au fur et à mesure, il sera obligé de déplacer les tableau des moyennes, s'il reste là où il l'avait placé au départ) ... j'ai essayé de rendre ça "visible" dans le fichier

J'aime bien préparer mes tableaux à l'avance et si j'avais mis les numéros de semaine jusqu'à la fin, la formule serait moins pertinente ?

Ben ... celle que j'ai proposée, oui !

Que fait cette partie de la formule EQUIV(MAX($B$2:$BB$2);$B$2:$BB$2;0) ? Elle donne la position du plus grand n° de semaine en ligne 2 ... si tu as inscrit tous tes n° de semaine, elle renverra donc la position de la 52e (ou 53e) semaine, dans la ligne 2 ... et tu n'auras sans doute pas encore de valeurs inscrites sous cette position !?

Dac, on va pa préparer son tableau à l'avance

Merci pour ton temps

Bonsoir,

Une autre approche, pas très élégante...

Cordialement

Suite

Ou plus simple...

Rechercher des sujets similaires à "moyenne dernieres semaines"