Ciao,
come � definito esattamente il nome 'stacked'?
E' un riferimento all'intervallo G1:G9 o � la matrice?
Ciao, Nur
"stacked" è definito così:
=INDICE(Foglio1!$A$1:$C$3;INT((RIF.RIGA(Foglio1!$A$1:$A$9)-1)/
3)+1;RESTO((RIF.RIGA(Foglio1!$A$1:$A$9)-1);3)+1)
---------------------
RISPONDI
Perch� hai l'assoluta necessit� di riferire il grafico ad un intervallo che
ha un nome?
Se spieghi lo scopo che ti prefiggi, sar� pi� facile darti una risposta.
--
Ciao,
Ignazio
RIO: www.riolab.org
> ---------------------
> RISPONDI
oops...
RISPOSTA .... anche se sarebbe pi� corretto ;)
--------------------
DOMANDA
> Perch� hai l'assoluta necessit� di riferire il grafico ad un intervallo
che
> ha un nome?
--
Ciao,
Ignazio
RIO: www.riolab.org
"stacked" � definito cos�:
=INDICE(Foglio1!$A$1:$C$3;INT((RIF.RIGA(Foglio1!$A$1:$A$9)-1)/
3)+1;RESTO((RIF.RIGA(Foglio1!$A$1:$A$9)-1);3)+1)
***********
Prova a visualizzare (tasto F9 sulla barra della formula) cosa restiuisce
questa formula.
Visualizzerai il primo valore, non *la matrice*.
Per capire la differenza, prova invece a scrivere in una cella
=RIF.RIGA($A$1:$A$9)
Con F9 visualizzerai: {1\2\3\4\5\6\7\8\9}
Il grafico ti visualizza ci� che 'stacked' rappresenta.
Non potresti, invece, tenere l'intervallo G1:G9 come appoggio e definire per
quel range un nome, magari dinamico?
Cosa intendi dicendo che hai *assoluta* necessit� del nome?
Ciao, Nur
Definisci cos� il nome 'stacked':
=PICCOLO(MAX($A$1:$C$3)*(3*(RIF.RIGA($1:$3)-1)+RIF.COLONNA($A:$C))+$A$1:$C$3;RIF.RIGA($1:$9))-MAX($A$1:$C$3)*RIF.RIGA($1:$9)
Questa *�* una matrice (che probabilmente si potrebbe scrivere anche
meglio... sono 'leggermente' fuori allenamento..).
Ciao, Nur
Creare un file d'appoggio per una tabella di decine di righe e colonne
diventa dispendioso. Se poi aggiungiamo il fatto che la persona che ci
lavorerà sopra può aggiungere righe e colonne alla tabella, ma non ha
la minima capacità di intervenire sulle formule, l'uso dei nomi
diventa una strada obbligata.
> Definisci così il nome 'stacked':
> =PICCOLO(MAX($A$1:$C$3)*(3*(RIF.RIGA($1:$3)-1)+RIF.COLONNA($A:$C))+$A$1:$C$3;RIF.RIGA($1:$9))-MAX($A$1:$C$3)*RIF.RIGA($1:$9)
>
Ecco, così funziona. E' un po' macchinoso, ma risponde alle mie
esigeze. Grazie mille.
� la stessa, ma pi� chiara
=PICCOLO(((RIF.RIGA(in)-1)*COLONNE(in)+RIF.COLONNA(in))*MAX(mat)+mat;RIF.RIGA(out))-RIF.RIGA(out)*MAX(mat)
dove mat � la matrice originaria (anche dinamica)
in � =SCARTO(Foglio1!$A$1;0;0;RIGHE(mat);COLONNE(mat))
out � =SCARTO(Foglio1!$A$1;0;0;RIGHE(mat)*COLONNE(mat);1)
.f
Ottimo davvero. Grazie ancora a tutti.
Certo, � pi� chiara.
La versione che ho postato io implica la necessit� di capire esattamente
come (e cosa) andrebbe 'adattato' al variare delle dimensioni e della
posizione di 'mat'.
In ogni caso, continuo a non capire l'impossibilit� di usare una colonna
d'appoggio (una colonna, non un file) dove portare la matrice in colonna,
ottenendo un range al quale far riferimento con un nome dinamico, ma, non
conoscendo il contesto di Ciofegates, non me la sento di insistere!
Ciao, Nur
se ho capito il contesto, non ha neppure molto senso trasferire
i dati in un range perch� il grafico sarebbe del tutto uguale sia
con i dati in formato matrice che con i dati in formato vettore
(excel a volte delle cose le ingrana naturalmente).
ma ciofegates fa sempre delle domande interessanti, sperimenta,
e costinge a sperimentare, spesso cose nuove.
quello del ridimensionamento di matrici � un campo molto ricco
per i grafici. io mi trovo spesso a utilizzare la formula opposta
a quella richiesta da ciofegates: come trasformare un vettore
in una matrice (essenziale nei grafici a dispersione un po'
complicati).
ossia:
=CERCA((RIF.RIGA(in)-1)*COLONNE(in)+RIF.COLONNA(in);RIF.RIGA(out);stacked)
.f
>
> ma ciofegates fa sempre delle domande interessanti, sperimenta,
> e costinge a sperimentare, spesso cose nuove.
Vero, da sempre!
Riprendendo il problema originale (cio� rappresentare su un istogramma una
matrice), mi sono accorta di una cosa che io non sapevo.
Prendiamo il caso di Ciofegates (ciao, se ci segui ancora!)
In A1:C3 ho i seguenti valori:
101 102 103
104 105 106
107 108 109
Chiamiamo Rng il range A1:C3.
Se proviamo ad usare Rng come serie per l'istogramma, ci dice che il
riferimento non � valido perch� deve comprendere una sola cella, riga,
colonna.
Per�, se il nome Rng lo definiamo cos�:
=Foglio1!$A$1:$C$3*{1;1;1}
allora lo accetta e l'istogramma presenta direttamente tutti i suoi bei
valori in ordine, come se provenissero dalla matrice 'impilata'.
Naturalmente quella {1;1;1} si pu� anche generalizzare in modo da renderla
dinamica (tipo RIF.COLONNA(A:C)^0 o qualcos'altro)
Che dici fernando? E' cos�, o sto facendo confusione su una cosa gi� ovvia?
Ciao, Nur
> Chiamiamo Rng il range A1:C3.
> Se proviamo ad usare Rng come serie per l'istogramma, ci dice che il
> riferimento non � valido perch� deve comprendere una sola cella, riga,
> colonna.
>
> Per�, se il nome Rng lo definiamo cos�:
> =Foglio1!$A$1:$C$3*{1;1;1}
>
> allora lo accetta e l'istogramma presenta direttamente tutti i suoi bei
> valori in ordine, come se provenissero dalla matrice 'impilata'.
> Naturalmente quella {1;1;1} si pu� anche generalizzare in modo da renderla
> dinamica (tipo RIF.COLONNA(A:C)^0 o qualcos'altro)
>
> Che dici fernando? E' cos�, o sto facendo confusione su una cosa gi�
> ovvia?
no, n� confusione, n� ovviet�.
ne parlo un po' qui:
http://groups.google.it/group/microsoft.public.it.office.excel/browse_thread/thread/c8e99c7b23ef2a
e la applico in alcuni esempi
(anche qui, ma a solo scopo di non far capire nulla :-):
http://social.microsoft.com/Forums/it-IT/officeit/thread/f6f48069-3fe1-4eb7-8ddf-dc8a3bff2f2e )
.
[avrei voluto applicarla qui:
http://groups.google.it/group/microsoft.public.it.office.excel/browse_thread/thread/4acdf11047c6f64b
ma non ci sono riuscito. mi occorreva un po' di tempo;
ora che sono in vacanza (a 126 metri *al* livello del mare :-) )
ci riprover�]
ne riparliamo.
intanto prova, pi� semplicemente:
=Foglio1!$A$1:$C$3*{1} o
=Foglio1!$A$1:$C$3+{0}
non dovrebbero esserci differenze.
.f
Beato te, conto di ritornarci anch'io presto... vicino *al* 126 metri a
livello del mare :-)
>
> ne riparliamo.
> intanto prova, pi� semplicemente:
> =Foglio1!$A$1:$C$3*{1} o
> =Foglio1!$A$1:$C$3+{0}
> non dovrebbero esserci differenze.
> .f
>
Infatti, non ce ne sono.
Interessante. Certo, ne riparliamo.
(buone ferie)
Ciao, Nur