Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2013 Moyenne glissante des 25 dernières données

JHA

XLDnaute Barbatruc
Bonjour à tous,

J'ai besoin de réaliser une moyenne glissante des 25 dernières données de la colonne "C" sans prendre en compte les données qui comportent "AREF" dans la colonne "B".

J'ai un début de piste en colonne "E" mais il me faut une colonne supplémentaire.

Auriez-vous une solution sans colonne supplémentaire?

JHA
 

Pièces jointes

  • Essai moyenne glissante.xlsx
    12.2 KB · Affichages: 20

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir @JHA ,

Une piste sans colonne auxiliaire avec une formule matricielle en F2 à tirer vers le bas :
VB:
=SIERREUR(SI(B2="AREF";"";SOMME(SI( (($B$2:B2<>"AREF") * (LIGNE($B$2:B2)>=GRANDE.VALEUR(SI($B$2:B2<>"AREF";LIGNE($B$2:B2);"");Rolling)) )>0;$C$2:C2;""))/Rolling);"")

edit : ajouté commentaire dans le fichier *.pdf
 

Pièces jointes

  • JHA- Essai moyenne glissante- v1.xlsx
    14.5 KB · Affichages: 21
  • Comm- JHA- Essai moyenne glissante- v1.pdf
    200.6 KB · Affichages: 25
Dernière édition:
Réactions: JHA

job75

XLDnaute Barbatruc
Bonjour JHA, mapomme,

Superbe solution mapomme

Cela dit avec cette fonction VBA on ne se prend vraiment pas la tête :
Code:
Function MoyenneGlissante(plage1 As Range, plage2 As Range, nval&, Optional exclu$)
Dim i&, n&, s#
For i = plage1.Rows.Count To 1 Step -1
    If plage1(i) <> exclu And IsNumeric(CStr(plage2(i))) Then
        n = n + 1
        s = s + plage2(i)
        If n = nval Then MoyenneGlissante = s / nval: Exit Function
    End If
Next
MoyenneGlissante = ""
End Function
A+
 

Pièces jointes

  • Essai moyenne glissante(1).xlsm
    24.7 KB · Affichages: 16

Discussions similaires

Réponses
8
Affichages
403
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…