moyenne des quatres derniers jours

  • Initiateur de la discussion Initiateur de la discussion l'ombre
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

L

l'ombre

Guest
Bonjour à tous,
Je ne connais absolument rien aux macros, mais je suis sûr que vous allez me répondre "pfou... facile !"
J'ai un fichier excel, avec un onglet par mois.
Dans la première colonne, j'ai les dates du mois (jj-mmm)
Dans la deuxième colonne une valeur
Tous les jours, en face de la date du jour, j'ajoute une valeur dans cette deuxième colonne.
Ensuite, au bas de cette deuxième colonne, j'ai une fonction qui réalise la moyenne des quatre derniers jours "=MOYENNE(B28:B31)"
Tous les jours, j'édite la plage de calcul "B28:B31" pour qu'elle corresponde effectivement aux quatres derniers jours...
Est-il possible de faire un bouton, associé à une macro, qui irait prendre les 4 derniers enregistrements de la colonne pour en afficher la moyenne ?
Pour info, lorsque je change de mois (et donc d'onglet), j'attends le quatrième jour pour faire la manip... mais ça se n'ai pas grave.
Merci de votre aide
 
Bonsoir

Voici la formule =si(NBVAL(B1:b31)=0;"";MOYENNE(SI(NBVAL(B1:B31)<5;B1:B4;DECALER(B1;NBVAL(B1:B31)-4;;4)))

elle fonctionnne, dans les trois cas, pas de valeur, moins de 5 valeurs, et en fonction du nombre de valeurs de la plage B1:B31

@+Jean-Marie
 
Merci de cette prompte réponse.
C'est presque ça, sauf que... il arrive que certains jours je n'obtiens aucune valeur. Par exemple, ce mois-ci, pendant 7 jours, les cases sont restées vides. Du coup la formule DECALER réalise NBVAL-4 mais comme il manque 7 valeurs, la formule décale de 11 (7et 4). Si je mets 0 à la place des vides, je fausse mes graphiques et autres moyennes mensuelles. Peut-on ignorer les cases vides ?
 
Re...

=SI(NBVAL(B1:B31)=0;"";MOYENNE(DECALER(B1;GRANDE.VALEUR((B1:B31>0)*LIGNE(B1:B31);SI(NBVAL(B1:B31)>3;4;NBVAL(B1:B31)))-1;;GRANDE.VALEUR((B1:B31>0)*LIGNE(B1:B31);1))))

formule matricielle à valider par Crtl+Shift+Enter

@+Jean-Marie
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour