Gruppo Dettaglio
X X1
X X2
X X3
X X4
Y Y1
Y Y2
Y Y3
Z Z1
Z Z2
Quello che voglio fare è condizionare la convalida di due celle,
diciamo A1 e B1, in cui in A1 posso scegliere solo uno tra i valori
distinti della colonna "Gruppo", ovvero dovrebbe comparirmi un elenco
a discesa con i soli valori X, Y e Z, e in B1 devo poter scegliere
solo tra i dettagli dipendentemente dalla selezione fatta in A1,
ovvero se in A1 ho scelto il valore "A", in B1 dovrebbe comparire
l'elenco a discesa X1, X2, X3 e X4, mentre se ho scelto in A1 "Y"
dovrebbe comparire l'elenco Y1, Y2 e Y3.
Ringrazio in anticipo per ogni contributo.
Alessio
ciao Alessio,
ti serve una "convalida doppia".
- Definisci prima un nome per l'elenco A: menu Inserisci>
nome>definisci
nome :: elencoA
riferito a:: intervallo del foglio in cui hai digitato l'elenco univoco
es: =Foglio!$G$1:$G$10
- ora devi definire i nomi per ciascun dettaglio: per il gruppo X darai
il nome "X"
per i dettagli gr.Y darai "Y" e così per gli altri.(nomi senza le
virgolette)
In colonna A : menu Dati>Convalida,
consenti elenco, origine:: =elencoA
in colonna B:
Convalida, consenti Elenco, origine:: =INDIRETTO(A1)
Puoi vedere anche:
http://www.prodomosua.eu/zips/convalida.xls
http://www.prodomosua.eu/zips/convalidadoppia.xls
--
ciao
giovanna
.......................
www.riolab.org
.........................
Ciao Alessio
Hai bisogno di 2 colonne di appoggio con formule matriciali che
debbono costituire gli elenchi di convalida:
Per semplificare le formule devi assegnare un nome agli intervalli;
nell'esempio seguente Dati per il tuo Gruppo e Dati1 per il tuo
Dettaglio
In una prima colonna di appoggio ( dove vuoi ), per avere i dati unici
della tua prima colonna, dopo aver selezionato un numero di celle
uguale a quello delle righe della prima colonna, inserisci la formula
matriciale:
=INDICE(Dati;PICCOLO(SE(CONFRONTA(Dati;Dati;
0)=RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati)));CONFRONTA(Dati;Dati;
0);"");RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati)))))
N.B. la formula funziona solo se l'elenco non ha celle vuote
Denomina l'intervallo di questa colonna di appoggio DatiUnici e
assegna la convalida della cella A1 a questo elenco ( ci saranno un
certo numero di #Num sotto i valori di interesse, ma l'eliminazione di
questi renderebbe la formula molto più complessa )
In una seconda colonna di appoggio ( dove vuoi ) , dopo aver
selezionato un numero di celle uguale a quello delle righe della prima
colonna inserisci la formula matriciale:
=SE(VAL.ERR(PICCOLO(SE(SE((SINISTRA(Dati1;1)=$A
$1);Dati1;"")<>"";RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1))));RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1)))));"";INDICE(SE((SINISTRA(Dati1;1)=
$A$1);Dati1;"");PICCOLO(SE(SE((SINISTRA(Dati1;1)=$A
$1);Dati1;"")<>"";RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1))));RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1))))))
Denomina l'intervallo di questa colonna di appoggio per es
GruppoDiDettaglio e assegna la convalida della cella A2 a questo
elenco
Il tutto sembra funzionare anche con gruppi discontinui del tipo:
x x1
y y1
x x2
z z1
y y2
e con l'aggiunta di righe vuote al di sopra degli intervalli dei dati
Ciao Elio
Alessio
On 28 Ago, 20:18, giovanna <giovannarc...@asiatiscali.it> wrote:
> Il 28/08/2007, a.cami...@gmail.com ha detto :
>
>
>
>
>
> > Salve a tutti. Potete aiutarmi con un problema diconvalida> condizionata?
> .........................- Nascondi testo tra virgolette -
>
> - Mostra testo tra virgolette -
Sbaglio forse nella modalità di inserimento di una formula matriciale,
che deve essere definita in modo particolare?
Ti ringrazio dell'aiuto, ciao.
Alessio
On 28 Ago, 21:03, elby <elibu...@tin.it> wrote:
> On 28 Ago, 17:11, a.cami...@gmail.com wrote:
>
>
>
>
>
> > Salve a tutti. Potete aiutarmi con un problema diconvalida> condizionata?
> $1);Dati1;"")<>"";RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1))));RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1)))));"";INDICE(SE((SINISTRA(Dati1;1)=
> $A$1);Dati1;"");PICCOLO(SE(SE((SINISTRA(Dati1;1)=$A
> $1);Dati1;"")<>"";RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1))));RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1))))))
>
> Denomina l'intervallo di questa colonna di appoggio per es
> GruppoDiDettaglio e assegna la convalida della cella A2 a questo
> elenco
>
> Il tutto sembra funzionare anche con gruppi discontinui del tipo:
>
> x x1
> y y1
> x x2
> z z1
> y y2
>
> e con l'aggiunta di righe vuote al di sopra degli intervalli dei dati
>
> Ciao Elio- Nascondi testo tra virgolette -
Grazie ancora.
Alessio
On 28 Ago, 21:03, elby <elibu...@tin.it> wrote:
> On 28 Ago, 17:11, a.cami...@gmail.com wrote:
>
>
>
>
>
> > Salve a tutti. Potete aiutarmi con un problema diconvalida> condizionata?
> $1);Dati1;"")<>"";RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1))));RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1)))));"";INDICE(SE((SINISTRA(Dati1;1)=
> $A$1);Dati1;"");PICCOLO(SE(SE((SINISTRA(Dati1;1)=$A
> $1);Dati1;"")<>"";RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1))));RIF.RIGA(INDIRETTO("1:"&RIGHE(Dati1))))))
>
> Denomina l'intervallo di questa colonna di appoggio per es
> GruppoDiDettaglio e assegna la convalida della cella A2 a questo
> elenco
>
> Il tutto sembra funzionare anche con gruppi discontinui del tipo:
>
> x x1
> y y1
> x x2
> z z1
> y y2
>
> e con l'aggiunta di righe vuote al di sopra degli intervalli dei dati
>