Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

cellule contenant un nom de plage dans formule matricielle ?

5 réponses
Avatar
Mat
bonjour,

j'ai d=E9fini des formules matricielles de ce type
{=3DMOYENNE((horaire1>8)*effectif)}

mais ayant un grand nombre de plages nomm=E9es (j'ai envirion 60 plages
horaires), j'aurai besoin de pouvoir inscrire la condition en
rempla=E7ant dans la formule matricielle le Nom par l'adresse d'une
cellule contenant le nom !

soit quelquechose du genre : MOYENNE(($A2>8)*effectif) avec
A2=3D"horaire1"
ainsi je pourrai dupliquer facilement les lignes et les formules dans
mon tableau de synth=E8se.

malheureusement cela ne marche pas ! j'ai aussi essay=E9 avec la formule
CELLULE("contenu",A2) sans succ=E8s

Pouvez-vous m'aider merci !
sinon le tableau de synth=E8se sera construit manuellement ...
beurk ! ce serait une insanit=E9 sur ce forum :-)
Mathieu

5 réponses

Avatar
lSteph
Bonsoir,
essaie avec
indirect()

lSteph
"Mat" a écrit dans le message de news:

bonjour,

j'ai défini des formules matricielles de ce type
{=MOYENNE((horaire1>8)*effectif)}

mais ayant un grand nombre de plages nommées (j'ai envirion 60 plages
horaires), j'aurai besoin de pouvoir inscrire la condition en
remplaçant dans la formule matricielle le Nom par l'adresse d'une
cellule contenant le nom !

soit quelquechose du genre : MOYENNE(($A2>8)*effectif) avec
A2="horaire1"
ainsi je pourrai dupliquer facilement les lignes et les formules dans
mon tableau de synthèse.

malheureusement cela ne marche pas ! j'ai aussi essayé avec la formule
CELLULE("contenu",A2) sans succès

Pouvez-vous m'aider merci !
sinon le tableau de synthèse sera construit manuellement ...
beurk ! ce serait une insanité sur ce forum :-)
Mathieu
Avatar
Mat
lSteph wrote:
Bonsoir,
essaie avec
indirect()

merci, mais cela donne une erreur #REF!


Mat

Avatar
lSteph
Bonjour,

il faut vérifier la syntaxe (aide de la fonction indirect) et utiliser une
référence valide (selon ce qui est appelé en A2)
et surtout faire référence à un élément OUVERT) sinon
il faudrait que tu te procures la fonction indirect.ext qui fait partie d'un
complément que tu peux trouver sur le site http://xcell05.free.fr de Laurent
Longre,
morefunc.xll

lSteph


"Mat" a écrit dans le message de news:


lSteph wrote:
Bonsoir,
essaie avec
indirect()

merci, mais cela donne une erreur #REF!


Mat




Avatar
Mat
il faut vérifier la syntaxe (aide de la fonction indirect) et utiliser une
référence valide (selon ce qui est appelé en A2)
la référence est le Nom de plage qui est valide dans mes autres

formules

et surtout faire référence à un élément OUVERT) sinon
il est bien dans le fichier ouvert (c'est une feuille du classeur)


il faudrait que tu te procures la fonction indirect.ext qui fait partie d 'un
complément que tu peux trouver sur le site http://xcell05.free.fr de La urent
cela ne marche pas mieux ...


Avez-vous une autre piste ?
merci,
Mat

Avatar
lSteph
Bonsoir Mat,
supposons le nom horaire1 (plage nommée) saisi en D25

En fait, {=MOYENNE((horaire1>8)*effectif)}
se traduirait en indirect par
{=MOYENNE((INDIRECT(D25)>8)*effectif)}

ceci fonctionne parfaitement aussi bien en xl97 qu'en 2003 (les conditions
étant réf valide et matrices de tailles concordantes)

le hic c'est que par rapport à ce que comprends de ce que tu sembles essayer
de faire
ce calcul serait plutôt faussé en ce sens...

...si tu cherches à faire la moyenne des valeurs supérieures à 8 en tant que
type d'horaire représenté par un nombre de 1 à n
cette formule ne totalise effectivement que les valeurs supérieures à 8 en
tant que valeur dans la matrice horaire choisie par indirect que factorise
la valeur relative en tant qu'effectif
mais
divise par le nombre n de valeurs globalement contenues dans la matrice yc
celles qui ne sont pas supérieures à 8.
.

Pour donner une représentation du poids de la valeur obtenue sur l'ensemble
en tant qu'échantillonage cela pourrait convenir,
mais pour obtenir une moyenne sur le nombre de celles effectivement
supérieures à 8, cette formule me paraît préférable:
=SOMMEPROD((INDIRECT(D25)>8)*effectif)/NB.SI(INDIRECT(D25);">8")
et plus besoin de matricielle.

lSteph



"Mat" a écrit dans le message de news:


il faut vérifier la syntaxe (aide de la fonction indirect) et utiliser une
référence valide (selon ce qui est appelé en A2)
la référence est le Nom de plage qui est valide dans mes autres

formules

et surtout faire référence à un élément OUVERT) sinon
il est bien dans le fichier ouvert (c'est une feuille du classeur)


il faudrait que tu te procures la fonction indirect.ext qui fait partie
d'un
complément que tu peux trouver sur le site http://xcell05.free.fr de
Laurent
cela ne marche pas mieux ...


Avez-vous une autre piste ?
merci,
Mat