Excel-Calculer une moyenne entre deux bornes

Résolu/Fermé
LD1 Messages postés 56 Date d'inscription jeudi 2 juin 2011 Statut Membre Dernière intervention 1 septembre 2011 - 4 juil. 2011 à 11:59
LD1 Messages postés 56 Date d'inscription jeudi 2 juin 2011 Statut Membre Dernière intervention 1 septembre 2011 - 4 juil. 2011 à 17:53
Bonjour,

Je rencontre un problème pour calculer des moyennes entre deux bornes variables d'une même série de données.

Je m'explique : j'obtiens une série de données dans une colonne. Lorsqu'un évènement donné survient, je renvoie la lettre "x" dans la cellule. J'ai besoin de calculer la moyenne des valeurs de ma colonne qui sont comprises entre deux évènements, soit entre deux "x". La "distance" entre deux "x" étant très variable, et le nombre de données conséquent, j'aurais besoin d'une formule qui automatiserait ce calcul...

Quelqu'un a-t-il une idée ?

Merci d'avance !


A voir également:

2 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
4 juil. 2011 à 12:25
Bonjour

doit y'avoir plus simple...

avec 2 cellules intermédiaire
par ex:
en C3
=ADRESSE(MIN(SI(A1:A30="x";LIGNE(A1:A30)));1)

en C5
=ADRESSE(MAX(SI(A1:A30="x";LIGNE(A1:A30)));1)

C3 et C5:Formules matricielles à valider par « ctrl+maj+entrée » (et non directement par « entrée »), le curseur clignotant dans la barre de formule; Excel encadre alors automatiquement la formule par des {}

et le résultat
=MOYENNE(INDIRECT(C5):INDIRECT(C3))
formule "normale"
1
LD1 Messages postés 56 Date d'inscription jeudi 2 juin 2011 Statut Membre Dernière intervention 1 septembre 2011
4 juil. 2011 à 17:53
Merci pour cette réponse. Malheureusement elle m'a donné du fil à retordre, car les distances entre deux "x" peut être aussi bien 1 que 500... Mais la piste est intéressante et pourra être exploitée pour un autre calcul...
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 209
Modifié par eriiic le 4/07/2011 à 16:41
Bonjour tout le monde,

Autre proposition avec tes x en A et tes valeurs en B.
en C2 :
=SI(A2="x";MOYENNE(DECALER(A2;0;1;EQUIV("x";DECALER(A2;1;0;500;);0);));"")
à recopier vers le bas

J'ai supposé qu'un x n'entrait que dans 1 moyenne, la plage comprend le 1er x mais pas le 2nd (compté dans la moyenne suivante).
L'erreur #NA sur le dernier x n'est pas traitée, ça risque d'alourdir la formule. A toi de dire si c'est absolument nécessaire...

eric

PS : supposé aussi 500 lignes max entre 2 x, et A vide sous le dernier x

PS2: avec #NA traité :
=SI(A2<>"x";"";SI(ESTNA(EQUIV("x";DECALER(A2;1;0;500;);0));MOYENNE(DECALER(B1;1;0;500;));MOYENNE(DECALER(A2;0;1;EQUIV("x";DECALER(A2;1;0;500;);0);))))
toujours en supposant 500 valeurs max

eric
1
LD1 Messages postés 56 Date d'inscription jeudi 2 juin 2011 Statut Membre Dernière intervention 1 septembre 2011
4 juil. 2011 à 17:50
Merci beaucoup !

Ca a l'air de fonctionner, et la logique de la formule me paraît adéquate. Il faut que j'essaie de la détourner pour l'appliquer à mes données et aux différents calculs que je veux effectuer sur la même base...
En tous cas je pense avoir toutes les billes maintenant.
0