utiliser INDIRECT pour somme sur plage variable

  • Initiateur de la discussion Initiateur de la discussion bill7
  • 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 !

B

bill7

Guest
[ résolu ] utiliser INDIRECT pour somme sur plage variable

bonjour,

dans A1 je veux stocker un nombre de jours.

De B1 à B20 je mets des nombres.

Dans C20 je veux calculer la moyenne des A1 cellules au dessus de B20
Dans C19 je veux calculer la moyenne des A1 cellules au dessus de B19
Dans C18 je veux calculer la moyenne des A1 cellules au dessus de B18
etc ...

Je pense que je dois utiliser INDIRECT mais je n'ai pas bien compris
Merci de votre aide
 
Dernière modification par un modérateur:
Re : utiliser INDIRECT pour somme sur plage variable

Bonjour


Tu peux nommer ta cellule A1 : MACELLULE * et ensuite

(* tu donnes le nom que tu veux)

En ensuite tu utilises ce nom dans des formules
=SOMME(B1:B8)/MACELLULE

ou plus simplement tu dollarises la cellule A1
=SOMME(B1:B8)/$A$1
 
Dernière édition:
Re : utiliser INDIRECT pour somme sur plage variable

Bonjour


Tu peux nommer ta cellule A1 : MACELLULE * et ensuite

(* tu donnes le nom que tu veux)

En ensuite tu utilises ce nom dans des formules
=SOMME(B1:B8)/MACELLULE

ou plus simplement tu dollarises la cellule A1
=SOMME(B1:B8)/$A$1

Ce n'est pas mon problème, la plage de somme aussi dépend de MACELLULE

S'il y a 5 dans A1

je veux que

C9 contienne somme(b4:B8)/5
C10 contienne somme(b5:B9)/5
C11 contienne somme(b6:B10)/5
 
Re : utiliser INDIRECT pour somme sur plage variable

Bonsoir

Tu peux écrire en C9
=SOMME(INDIRECT("B"&LIGNE()-8&":B"&A$1+LIGNE()-9))/A$1
puis tirer cette relation vers le bas

@ plus

PS : Vue ta dernière remarque, cette fonction ne doit pas encore te convenir. J'avais compris que tu voulais faire, en C9, la moyenne sur B1:B8 parceque A1 était égal à 8. Avec 5, cela aurait été sur B1:B5, ce que donne la formule ci-dessus.

PS 2 :
Vue ta dernière remarque... la formule à utiliser serait plutot du style, en C9
=SOMME(INDIRECT("B"&LIGNE()-A$1&":B"&+LIGNE()-1))/A$1
 
Dernière édition:
Re : utiliser INDIRECT pour somme sur plage variable

Bonsoir

Tu peux écrire en C9
=SOMME(INDIRECT("B"&LIGNE()-8&":B"&A$1+LIGNE()-9))/A$1
puis tirer cette relation vers le bas

@ plus

PS : Vue ta dernière remarque, cette fonction ne doit pas encore te convenir. J'avais compris que tu voulais faire, en C9, la moyenne sur B1:B8
parceque A1 était égal à 8. Avec 5, cela aurait été sur B1:B5, ce que donne la formule ci-dessus.

Non avec 5 ça aurait été B4:B8 (les 5 cellules au dessus de B9)
 
Re : utiliser INDIRECT pour somme sur plage variable

Non avec 5 ça aurait été B4:B8 (les 5 cellules au dessus de B9)

Oui, mais vu ton premier exemple, on ne pouvait pas le deviner tout seul😀.

Il faut toujours essayer d'être extrêment précis, sans oublier aucun cas particulier, lorsqu'on défini un problème à résoudre.

Aller, une autre possibilité, toujours en C9 :

=MOYENNE(INDIRECT("B"&LIGNE()-A$1&":B"&+LIGNE()-1))

@ plus
 
Dernière édition:
Re : utiliser INDIRECT pour somme sur plage variable

Re,

Autant pour moi, j'avais oublié un morceau :

=SI(LIGNE()<$A$1+1;"";MOYENNE(DECALER(B9;-1;0;-$A$1)))
ou
=SI(LIGNE()<$A$1+1;"";SOMME(DECALER(B1;-1;0;-$A$1))/$A$1)
 

Pièces jointes

Dernière édition:
Re : utiliser INDIRECT pour somme sur plage variable

Oui, mais vu ton premier exemple, on ne pouvait pas le deviner tout seul😀.

Il faut toujours essayer d'être extrêment précis, sans oublier aucun cas particulier, lorsqu'on défini un problème à résoudre.

@ plus

pourtant j'écrivais dans le 1er msge :

C9 contienne somme(b1:B8)/8
C10 contienne somme(b2:B9)/8
C11 contienne somme(b3:B10)/8

=SI(LIGNE()<$A$1;"";SOMME(DECALER(B1;0;0;-$A$1))/$A$1) me donne une erreur ...
 

Pièces jointes

Dernière modification par un modérateur:
Re : utiliser INDIRECT pour somme sur plage variable

pourtant j'écrivais dans le 1er msge :

C9 contienne somme(b1:B8)/8
C10 contienne somme(b2:B9)/8
C11 contienne somme(b3:B10)/8

Voui, voui, mais ma première formule fait bien cela, avec A1 = 8

et avec A1 = 5, elle donne
en C9 somme(b1:B5)/5
en C10 somme(b2:B6)/5
en C11 somme(b3:B7)/5

ce qui n'est pas ce que tu veux, mais comme déja dit, on ne pouvait pas le deviner d'avance

Ceci dit, avec les formules de bhbh, celles de catrice (que je salue au passage), et avec ma seconde formule, et ma troisième formule, tu as maintenant le choix 🙂

@ plus
 
Dernière édition:
Re : utiliser INDIRECT pour somme sur plage variable

Bonsoir,

regarde le fichier joint..

J'ai déterminé une zone dynamique...

Regarde dans Insertion/Nom/Définir.....

Formule pour la zone nommée... :

Code:
=DECALER(Feuil1!$B$1;LIGNE()-Feuil1!$A$1;;Feuil1!$A$1)
 

Pièces jointes

- 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

Réponses
4
Affichages
949
Réponses
4
Affichages
962
Retour