=MOYENNE(INDIRECT(B58&(NB(INDIRECT(B58&":"&B58))+1)-($C$56-1)):INDIRECT(B58&(NB(INDIRECT(B58&":"&B58))+1)))
À quoi sert-elle ? Simplement à calculer la moyenne des x dernières valeurs présentent dans une colonne y alors que cette même colonne continue de croître de façon automatique via un script.
Bien que facile à exprimer en language ordinaire, il n'était pas évident de concocter une telle formule.
Pour y parvenir, il faut découper le problème...
1) comment calculer une moyenne ?
Au moyen de la formule =MOYENNE(cellule_référence1: cellule_référence2)
2) mais comment trouver de façon dynamique la dernière cellule occupée dans une colonne y ?
Au moyenne de la formule =NB(plage_de_données_concernées)
2.1) Oui mais comment être sûre que toutes les données seront évaluées ?
Facile... Exemple si tu veux faire la somme de toutes les valeurs dans la colonne z alors il faut seulement définir la formule ainsi:
=SOMME(Z:Z)
De cette façon, toutes les valeurs numériques dans la colonne Z seront considérées.
3) Mais à quoi peu bien servir INDIRECT(..) ?
À transformer le contenu d'une cellule en référence de cellule un peu comme le sage utilise le doigt pour pointer la lune
Donc, avec cette sous-formule : INDIRECT(B58&(NB(INDIRECT(B58&":"&B58))+1)-($C$56-1))
Je convertie le contenu d'une cellule (B58) en une référence. Si B58 contenait par exemple la lettre 'E', je pourrais convertir ce texte en une référence pouvant être utilisée dans une formule comme =SOMME(..) ou =MOYENNE(..) ou mieux ECARTYPE(..). Ici, je l'utilise avec =MOYENNE(..) afin de calculer la moyenne des x dernières valeurs dans une colonne y.
N'est-ce pas formidable ?

Mieux encore... ça marche la patente












