Sommario
In Excel, a volte è necessario generare un elenco in base a dei criteri. Oggi vi mostreremo come generare un elenco in base a dei criteri. Per questa sessione utilizzeremo Excel 365, anche se si consiglia di utilizzare questa versione, sentitevi liberi di utilizzare la vostra.
Prima di tutto, conosciamo il set di dati che è alla base dei nostri esempi.
Qui abbiamo un set di dati di diverse persone provenienti da luoghi diversi, insieme ai loro veicoli. Utilizzando questi dati, formeremo un elenco basato su criteri.
Si noti che questa è una tabella di base con dati fittizi per mantenere le cose semplici. In uno scenario pratico, si potrebbe incontrare un set di dati molto più grande e complesso.
Libro di lavoro pratico
Potete scaricare il libro di esercizi dal seguente link.
Excel Generare un elenco in base a criteri.xlsxGenerare un elenco in base ai criteri
Ad esempio, creeremo un elenco di persone in base alla loro regione.
Poiché si tratta di un piccolo set di dati, sappiamo che ci sono 4 regioni. Abbiamo memorizzato i nomi delle regioni e troveremo l'elenco in base alla regione.
1. Utilizzo della combinazione INDEX-SMALL per generare l'elenco
In questo caso abbiamo bisogno di un elenco, quindi la nostra formula deve essere in grado di recuperare i valori multipli dalla tabella. Per questo compito, possiamo usare una combinazione di INDICE e PICCOLO funzioni.
Per conoscere queste funzioni, consultate questi articoli: INDICE, PICCOLO.
Oltre a queste due, avremo bisogno di alcune funzioni ausiliarie, SE , FILO e IFERRORE Per ulteriori informazioni, consultare gli articoli: IF, ROW, IFERROR.
Esploriamo la formula
=IFERROR(INDEX($B$2:$B$12,SMALL(IF($C$2:$C$12=$G$2,ROW($B$2:$B$12)),ROW(1:1))-1,1),")
Qui ogni funzione ha il suo scopo. INDICE restituisce il valore dell'array B2:B12 (colonna Nome) e il grande PICCOLO fornisce il numero di riga che deve essere recuperato.
IF, all'interno del PICCOLO, controlla se i criteri sono soddisfatti o meno e il metodo FILO itera sulle celle della colonna.
Quindi la parte esterna FILO denota il k-esimo valore per il PICCOLO Insieme, queste funzioni restituiscono il numero di riga e il numero di INDICE restituisce il risultato.
IFERRORE per gestire eventuali errori che possono derivare dalla formula.
Trascinando verso il basso si ottengono tutte le persone della regione indicata.
Allo stesso modo, scrivete la formula per le altre regioni (la formula è la stessa, solo che si sposta la cella).
Una combinazione alternativa INDEX-SMALL
Possiamo scrivere la formula in modo alternativo. Le funzioni utilizzate per la formula saranno le stesse di quelle precedenti, solo la presentazione sarà diversa.
Vediamo la formula
=IFERROR(INDEX($B$2:$B$12,SMALL(IF($C$2:$C$12=G$2,ROW($B$2:$B$12)-1)),ROW(1:1)),1),")
Anche in questo caso, è necessario premere CTRL + SHIFT + INVIO per l'esecuzione della formula.
C'è una leggera differenza tra queste due formule, potete distinguerle?
Sì, nella nostra formula precedente, abbiamo sottratto 1 alla fine della formula. PICCOLO ma in questo caso abbiamo sottratto 1 all'interno dell'area SE porzione.
Lo scopo della sottrazione di 1 è quello di canalizzare il numero di riga corretto. L'abbiamo già fatto in precedenza, qui lo abbiamo fatto in precedenza e procediamo con le operazioni successive.
Scrivete la formula per gli altri criteri per completare l'elenco.
Per saperne di più: Come creare un elenco all'interno di una cella in Excel (3 metodi rapidi)
2. Utilizzo della funzione AGGREGATE per generare l'elenco
Excel mette a disposizione una funzione chiamata AGGREGATO che si possono usare per eseguire varie operazioni. Qui possiamo usare la funzione per generare un elenco basato su criteri.
Il AGGREGATO restituisce un calcolo aggregato come MEDIA, CONTO, MAX, ecc.
La sintassi per l'opzione AGGREGATO è la seguente:
AGGREGATE(numero_funzione, opzioni_comportamento, intervallo)
numero_funzione: Questo numero specifica quale calcolo deve essere effettuato.
comportamento_opzioni: Impostare questo numero, che indica il comportamento della funzione.
gamma: Intervallo che si desidera aggregare.
Il AGGREGATO svolge diversi compiti, per cui al suo interno sono predefinite alcune funzioni. Elenchiamo alcune funzioni di uso frequente
Funzione | Numero_funzione |
---|---|
MEDIA | 1 |
CONTO | 2 |
CONTE | 3 |
MAX | 4 |
MIN | 5 |
PRODOTTO | 6 |
SOMMA | 9 |
GRANDE | 14 |
PICCOLO | 15 |
Per saperne di più sulla funzione, visitare il sito Supporto Microsoft sito.
Vediamo ora la formula,
=IFERROR(INDEX($B$2:$B$12,AGGREGATE(15,6,IF($C$2:$C$12=G$2,ROW($B$2:$B$12)-1),ROW(1:1)),1),")
Qui insieme al AGGREGATO abbiamo utilizzato la funzione INDICE . INDICE contiene l'array che restituisce i valori basati sulle corrispondenze trovate nella parte successiva della formula.
Si può notare che abbiamo utilizzato 15 come il numero_funzione in AGGREGATO Dalla tabella precedente, si può notare che 15 chiede che il PICCOLO Operazione di funzione. Ora, riuscite a capirlo?
Sì, abbiamo eseguito il INDICE - PICCOLO formula nel modo in cui la AGGREGATO funzione.
6 per l'opzione di comportamento, che indica ignorare i valori di errore .
Scrivete la formula per gli altri valori.
Letture simili
- Come creare un elenco di cose da fare in Excel (3 metodi semplici)
- Creare una mailing list in Excel (2 metodi)
- Come creare un elenco numerato in Excel (8 metodi)
3. Generare un elenco unico utilizzando INDEX-MATCH-COUNTIF
Si può creare un elenco unico in base a dei criteri. A tal fine, si può usare la combinazione di INDICE , PARTITA , e COUNTIF .
COUNTIF conta le celle in un intervallo che soddisfa una singola condizione. e PARTITA individua la posizione di un valore di ricerca in un intervallo. Per saperne di più su queste funzioni, visitate questi articoli: MATCH, COUNTIF.
Esploriamo la formula
=IFERROR(INDEX($B$2:$B$12, MATCH(0, IF(G$2=$C$2:$C$12, COUNTIF($G$2:$G2, $B$2:$B$12), ""), 0)),")
In questa formula: B2:B12 è l'intervallo di colonne che contiene i valori univoci da cui si vuole estrarre, C2:C12 è la colonna che contiene il criterio su cui ci si basa G2 indica il criterio.
All'interno del PARTITA abbiamo fornito 0 come valore di lookup_array, e per intervallo_di_ricerca abbiamo utilizzato il SE porzione contenente COUNTIF Quindi, questa parte restituisce il valore fino a quando viene trovato 0. Il valore qui funziona come numero di riga per il metodo INDICE .
Trascinandolo verso il basso si troveranno tutti i valori unici.
Non dimenticate di utilizzare la funzione CTRL+SHIFT + INVIO per eseguire la formula.
Questa è stata una menzione d'onore tra gli approcci per generare una lista unica. Seguite questo articolo per sapere come generare una lista unica. elenco unico basato su criteri .
4. Utilizzo della funzione FILTRO per generare un elenco in base a dei criteri
Se si utilizza Excel 365, è possibile eseguire l'operazione con un'unica funzione integrata chiamata FILTRO .
Il FILTRO filtra un intervallo di dati in base a determinati criteri ed estrae i record corrispondenti. Per conoscere la funzione, visitate questo articolo: FILTRO .
Ora, la nostra formula sarà la seguente,
=FILTRO($B$2:$B$12,$C$2:$C$12=G$2)
B2:B12 è l'array che deve essere filtrato. Poi abbiamo fornito la condizione, in base alla quale genereremo l'elenco.
In questo caso non è necessario trascinare la formula verso il basso, in quanto questa fornirà tutti i valori e riempirà l'elenco.
Per saperne di più: Come creare un elenco alfabetico in Excel (3 modi)
Conclusione
Per oggi è tutto. Abbiamo elencato diversi modi per generare un elenco basato su criteri. Speriamo che vi sia utile. Sentitevi liberi di commentare se qualcosa vi sembra difficile da capire. Fateci sapere se ci sono altri metodi che abbiamo tralasciato.