gaspart
Excel: doppia convalida da elenco
17.06.2010 08:49:32

La convalida da elenco di Excel è una gran bella invenzione. Nell'inserimento di dati in una cella, ti permette di scegliere da un elenco e ti evita di dover scrivere a mano: zero errori, zero fatica, tutti felici. Se però l'elenco dei valori ammessi è molto lungo, come ad esempio per tutte le nazioni del mondo, allora l'uso del menu a tendina diventa troppo complicato rispetto a scrivere direttamente nella cella.

 

Una strategia interessante potrebbe essere quella di far scegliere prima il continente, e poi restringere la scelta della nazione in base alla scelta precedente. Occorre quindi dividere l'elenco in più colonne, come ho fatto in questo esempio:

 

 

La prima convalida in B14 permette di scegliere il continente e ha come origine le celle A1:C1. La seconda convalida in B15 sceglie la nazione e non ha come origine un intervallo, ma una formula che restituisce un intervallo diverso a seconda del contenuto della cella B14:

 

=SCARTO(A2:C7;0;CONFRONTA(B14;A1:C1;0)-1;7;1)


Non è una formula facile da ricordare o da scrivere, e neanche da controllare. Per fortuna ho trovato un altro modo, molto più semplice, che ho usato sotto.

 

 

Prima di tutto ho creato in automatico i nomi per gli intervalli A2:A7, B2:B7 e C2:C7 prendendoli da A1, B1 e C1. In B19 c'è la stessa convalida che in B14, ma in B20 la formula inserita nella convalida da elenco è semplicissima:

 

=INDIRETTO(B19)


Siccome la funzione INDIRETTO restituisce il riferimento specificato da una stringa di testo, e siccome nel nostro caso la stringa di testo in B19 corrisponde al nome dell'intervallo, voilà il gioco è fatto. Per la gioja de li piccini, allego il file di Excel 2007 Doppia convalida. Come al solito, se conosci altri modi di fare la stessa cosa, sono interessato.

 

Tra parentesi, l'esempio è nel formato di Office 2007-2010. Se stai usando versioni precedenti di Excel, e avrai le tue gravissime ragioni, spero tu abbia installato il convertitore gratuito.

 

 




Tags: Convalida | Excel


 

quest
14.08.2010 20:33:23

Fantastico ottima guida! Grazie per l'esempio finito, ho scaricato l'excel e ho visto la formula con la convalida che funziona alla perfezione.
E' un po' che cercavo una cosa simile ma mi sono impantanato in un problema: la stessa cosa fatta, quindi la convalida doppia, volevo assegnarla ad una intera colonna. Nell'esempio dell'articolo, quello che vorrei ottenere è che avendo una colonna da cui scegliere dal menu a tendina il continente, la cella immediatamente vicina nella stessa riga si imposta automaticamente sulle nazioni di quel continente. Con la formula indiretto, purtroppo ottengo solo che tutte le righe della colonna a cui assegno la convalida doppia, dipendono solo da una cella (la prima) e non sono dinamiche (il risultato che cerco invece è per es: cella A1 "Asia" -> scelte su cella B1 "Cina" "Giappone" "Indonesia" "Filippine" "India"; cella A2 "Europa" -> scelte su cella B2 "Italia" "ecc.". E' possibile fare una cosa di questo tipo?
Grazie in anticipo
Reply
 
Reply this post
Username:

E-mail:

  Enter text shown in left:
 



IDOBlog - blog for joomla 1.5