- Dettagli
- Scritto da Alessandra
- Pubblicato: 12 Aprile 2012
- Visite: 24352
Voglio dedicare il post di oggi a una delle domande che mi pongono spesso i partecipanti dei miei corsi: Come si fa a suddividere i dati di un foglio Excel in fogli diversi sulla base di un criterio?
Non è una operazione semplicissima, ma si può fare tranquillamente grazie ad uno strumento Excel poco utilizzato: le query.
Immaginiamo di avere nel primo foglio di un file l'elenco che segue e di voler suddividere questi dati per Categoria dividendoli per fogli. La suddivisione deve essere dinamica, nel senso che se all'elenco originale si aggiunge una spesa, questa deve comparire anche nel foglio relativo alla sua categoria.
Data |
Categoria |
Importo |
10/10/2011 |
Francobolli |
€ 1,10 |
11/10/2011 |
Cancelleria |
€ 4,58 |
15/10/2011 |
Cancelleria |
€ 6,00 |
07/11/2011 |
Altro |
€ 3,30 |
30/11/2011 |
Libri |
€ 28,28 |
01/12/2011 |
Cancelleria |
€ 6,40 |
04/12/2011 |
Libri |
€ 23,00 |
12/12/2011 |
Materiale informatico |
€ 75,50 |
18/12/2011 |
Cancelleria |
€ 6,75 |
20/12/2011 |
Libri |
€ 34,50 |
08/01/2012 |
Cancelleria |
€ 10,60 |
09/01/2012 |
Altro |
€ 17,50 |
09/01/2012 |
Cancelleria |
€ 31,50 |
01/02/2012 |
Bolli |
€ 16,50 |
13/02/2012 |
Materiale informatico |
€ 17,20 |
14/02/2012 |
Libri |
€ 61,50 |
05/03/2012 |
Cancelleria |
€ 15,78 |
05/03/2012 |
Francobolli |
€ 5,50 |
07/03/2012 |
Altro |
€ 7,00 |
01/04/2012 |
Cancelleria |
€ 5,00 |
Mostreremo come fare per i francobolli, per tutte le altre categorie basterà ripetere, in fogli diversi, la stessa procedura.
Per prima cosa aggiungete al file un nuovo foglio e rinominatelo Francobolli.
Fate clic sulla cella A1 di questo nuovo foglio e portatevi nella scheda Dati della barra multifunzione. Qui, nel gruppo Carica dati esterni, fate clic sul pulsante Da altre origini, quindi scegliete Da Microsoft Query.
Vi si presenterà la finestra Scegli origine file. Fate clic su Excel files e poi premete OK.
Vi verrà chiesto di scegliere il file su cui eseguire la query. Scegliete lo stesso file su cui state lavorando e premete Ok. Nella nuova finestra che vi si presenta scegliete il nome del foglio che contiene i dati originali e premete Aggiungi. Poi premete il tasto Chiudi per chiudere questa finestra.
Nella nuova finestra vedrete l'elenco delle etichette di colonna presenti nel foglio selezionato. Trascinate verso il basso quelle i cui dati volete riportare nel foglio filtrato. Dovete portare almeno la colonna che contiene i valori su cui applicare il filtro
Fate poi clic nella colonna da filtrare (Categoria per noi) e scegliete Criteri > Aggiungi criteri.
Visualizzerete la finestra Aggiungi criteri, già in parte compilata.
La finestra che vedete nella figura filtra le righe che nella colonna Criteri contengono il valore Francobolli. Il valore in base a cui filtrare può essere scritto o scelto dall'elenco che vi si presenta se premete il tasto Valori
Una volta impostati i criteri fate clic su Aggiungi e poi Chiudi.
A questo punto non vi resta che usare il pulsante Restituisci i dati per inserire in Excel i dati filtrati.
Vi si presenterà una finestra che vi chiede da dove cominciare ad incollare i dati filtrati: la cella A1 del foglio Francobolli andrà benissimo.
Ripetete questa procedura, in fogli diversi, per tutte le categorie da suddividere.
Le query si aggiornano automaticamente all'apertura del file, ma se volete aggiornare la suddivisione dei dati durante una sessione di lavoro, portatevi alla scheda Dati e, nel gruppo Connessioni, premete il pulsante Aggiorna tutti.
L'unico problema di questa soluzione è che se si sposta il file Microsoft Query, non trova più i dati dell'elenco originale da suddividere. Questo perché, anche se si lavoro all'interno di una cartella di lavoro, Microsoft Query, salva all'interno della query il percorso assoluto del file che contiene i dati. Per aggirare questo problema, occorre eseguire, all'apertura del file, una macro VBA che aggiorna questo percorso. Questo sarà l'argomento di un prossimo post.