Moyenne pondérée par durée

Bonjour à tous,

Je joins un fichier pour que cela soit plus clair, ça risque d'être compliqué sinon... !

J'ai un état des mouvements d'un stock avec les dates de mouvement, en colonne C, et le stock résultant de ce mouvement en colonne D.

Un mouvement PEUT ne pas impacter le stock (c'est comme ça... ).

Je cherche donc à calculer un stock moyen pondéré par la durée de détention de ce stock.

Par exemple, dans le fichier ci joint de l'année 2015, mon stock est de 1 000 000 du 1er janvier au 14 avril. Le 15 avril, il passe à 400 000 unités.

Il a donc été à 1 000 000 pendant 104 jours.

Il reste à 400 000 unités jusqu'au 14 juin, soit pendant 61 jours.

Etc...

L'opération souhaitée est donc : ( 1 000 000 * 104 + 400 000 * 61 + .... ) / 365

(365 dans cet exemple... j'aimerai pouvoir personaliser les dates de début et de fin, mais ce sera dans un second temps... !)

Je souhaite obtenir cette opération de façon automatique, via une formule (sans macro ), mais je ne sais pas comment faire... Il faudrait aller chercher la date de modification de stock, et la précédente, etc...

Je ne sais pas trop comment m'y prendre. Si vous avez des idées, voir mieux, une solution, je suis preneur !

Merci d'avance.

Bien cordialement,

Oni.

Edit : Modification du fichier en PJ

51moyenne.xlsx (9.54 Ko)

Bonsoir,

Ci-joint une proposition, à tester, prenant en compte aussi les dates de début/fin modifiables.

(Utilisation de 4 colonnes de calcul intermédiaires, en violet)

"Un mouvement n'influe pas forcément sur le stock, le stock peut donc être identique sur plusieurs dates."

Pour info, cela ne change rien dans la formule, Somme de (durée * stock), même si le stock reste identique.

Bonne soirée

Bouben

104moyenne-v0-1.xlsx (18.06 Ko)

Bonsoir,

Actuellement en congé je ne peux regarder ton fichier pour l'instant (pas de pc...). Je le consulte dès que possible mais je tenais quand même à te remercier dès à présent.

Bien cordialement,

Oni

Rechercher des sujets similaires à "moyenne ponderee duree"