Filtri su piu colonne
Articoli
Filtro con Matrici dinamiche
Microsoft scrive: "Usare i filtri per nascondere temporaneamente parte di un contenuto di una tabella, in modo di potersi concentrare sui dati che interessano.... I filtri di dati di un foglio di lavoro consentono di trovare rapidamente i valori cercati. E' possibile filtrare una o più colonne di dati ... è possibile filtrare in base ad un opzione di un elenco oppure è possibile creare filtri specifici per vedere solo determinati dati."
Partiamo da un database e quando si applica la funzione Filtro su una colonna, le colonne successive verranno filtrate solo in base al risultato della colonna filtrata precedentemente.
Significa che solo il criterio AND può essere applicato a più di una colonna. Come possiamo applicare sia AND che OR per filtrare più colonne contemporaneamente?
Se provassimo ad applicare, in un database di Excel, un filtro su più colonne potremmo avere dei risultati non corretti.
Se i dati che vogliamo filtrare richiedono dei criteri complessi (tipo 1° corso= " ginnastica", 2° corso =yoga", 3° corso= computer) è possibile usare il filtro avanzato o le matrici dinamiche.
Avete la necessità di applicare dei filtri su per colonne multiple ed eventualmente riportarle in un altro foglio di lavoro per non toccare la tabella originale?
Vediamo come risolvere il problema usando le matrici dinamiche.
Passare il mouse sull'immagine. Click per ingrandire
Partiamo da un database come mostrato a lato. con persone che partecipano a più corsi in un centro culturale.
Abbiamo :
- Una colonna per i Cognomi
- Una colonna per il 1° corso
- Una colonna per il 2° corso
- Una colonna per il 3° corso
Se provassimo a cercare quante persone partecipano al corso di "BALLO" filtrando la prima colonna (quindi lasciamo la spunta solo a BALLO) avremo un risultato errato.
In quanto tutte le righe, eccetto la riga con la lettera BBB, saranno nascoste.
Quindi avremo un risultato di solo 1 persona, mentre vedendo la nostra tabella sappiamo che sono 2 le persone che sono iscritte a BALLO (anche AAA > Vedi la figura).
Prima cosa ricopiamo, fuori della tabella, in una cella qualsiasi le intestazioni dei corsi della tabella.
Sotto, ricopiamo le stesse intestazioni di tutta la nostra tabella che vogliamo filtrare (vedi figura).
Avremo una situazione tipo:
Tabella principale da B4 a E12
Intestazioni corsi per filtrare da H1 a J1
Copia delle intestazioni tabella principale da H4 a K4
Vedi figura.
Passare il mouse sull'immagine. Click per ingrandire
Passare il mouse sull'immagine. Click per ingrandire
Ora inseriamo in cella H5 la seguente formula:
= FILTRO(A5:D500);(B5:B500=H2)+(C5:C500=J2)+(D5:D500=K2);"NON CI SONO RISULTATI")
Come funziona la formula?
(A5:D500) rappresenta la tabella dove cercare i valori da filtrare
(B5:B500=H2) Selezioniamo solo la colonna del primo corso e indichiamo il valore che dobbiamo cercare inserito nella cella H2
(C5:C500=I2) Selezioniamo solo la colonna del secondo corso e indichiamo il valore che dobbiamo cercare inserito nella cella I2
(D5:D500=J2) Selezioniamo solo la colonna del secondo corso e indichiamo il valore che dobbiamo cercare inserito nella cella J2
"NON CI SONO RISULTATI" In caso che non ci siano persone iscritte al corso che abbiamo selezionato facciamo apparire un nostro avviso.
Il valore 500 è casuale per prevedere aggiunte di partecipanti.
Inseriamo anche in I2 e J2 la formula
=H2
in modo tale inserendo una sola volta il corso da cercare sulle colonne "B", verrà riportato, in automatico, anche in "C", e "D"
Il risultato ora è corretto.
Una precisazione: il simbolo "+" nella formula equivale all' operatore logico OR. Se avessimo inserito il simbolo "*" sarebbe stato come inserire l'operatore logico AND.
Ci sono anche molti filmati su youtube.
Provate anche il filtro avanzato.