cellule contenant un nom de plage dans formule matricielle ?
5 réponses
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
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
Bonsoir,
essaie avec
indirect()
lSteph
"Mat" <rivierpb@free.fr> a écrit dans le message de news:
1153506513.196715.123420@i3g2000cwc.googlegroups.com...
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
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
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
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" <rivierpb@free.fr> a écrit dans le message de news:
1153555067.604129.127910@m79g2000cwm.googlegroups.com...
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
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
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 ...
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
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
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" <rivierpb@free.fr> a écrit dans le message de news:
1153718285.930055.293550@m73g2000cwd.googlegroups.com...
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 ...
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 ...