=DATI.ORDINA(A2:C7;3;-1) restituisce la tabella A2:C7 ordinata per la terza colonna, le vendite, dalla più grande alla più piccola. La tabella originale resta com'è; la copia ordinata si espande dalla cella della formula e si riordina da sola quando un numero cambia. Cambia C7 in 300 e Finn sale in cima. In inglese DATI.ORDINA si chiama SORT, ed è così che la mostra la tabella: =SORT(A2:C7,3,-1). Puoi scrivere le formule anche in italiano, con il punto e virgola.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Name | Region | Sales | Name | Region | Sales | |
| 2 | Ann | North | 120 | Cara | North | 200 | |
| 3 | Ben | South | 80 | Dan | East | 150 | |
| 4 | Cara | North | 200 | Ann | North | 120 | |
| 5 | Dan | East | 150 | Eve | South | 95 | |
| 6 | Eve | South | 95 | Ben | South | 80 | |
| 7 | Finn | North | 60 | Finn | North | 60 |
=DATI.ORDINA(A2:C7;3;-1)Sintassi di DATI.ORDINA
=SORT(array, [sort_index], [sort_order], [by_col])
arrayè l'intervallo da ordinare e restituire.sort_indexè il numero della colonna dentroarrayin base a cui ordinare. Il valore predefinito è 1.sort_orderè 1 per l'ordine crescente (il predefinito) o -1 per quello decrescente.by_colè FALSO (il predefinito) per ordinare le righe, VERO per ordinare le colonne da sinistra a destra.
DATI.ORDINA e DATI.ORDINA.PER (in inglese SORTBY) richiedono Excel 2021, Excel 2024 o Microsoft 365; le versioni precedenti mostrano #NOME? (in inglese #NAME?; la tabella mostra i nomi inglesi degli errori). Google Sheets le ha entrambe, anche se il suo SORT accetta un numero di colonna e VERO o FALSO a coppie.
L'ordine crescente mette prima i numeri, poi il testo dalla A alla Z, poi FALSO e VERO. Il testo viene confrontato senza badare alle maiuscole. Le celle vuote di array tornano come 0 nel risultato.
Come mettere in ordine alfabetico in Excel
Per riordinare un elenco sul posto, fai clic su una sua cella qualsiasi e scegli Dati > Ordina dalla A alla Z (o dalla Z alla A). Se l'elenco ha colonne vicine, Excel ordina l'intera tabella così ogni riga resta unita. Usa Dati > Ordina per più di una colonna o per un elenco personalizzato.
Per mantenere l'ordine originale e avere una copia alfabetica che si aggiorna da sola, usa DATI.ORDINA senza altri argomenti:
| A | B | C | |
|---|---|---|---|
| 1 | Name | A to Z | |
| 2 | Mia | Ann | |
| 3 | Ben | Ben | |
| 4 | Zoe | Cara | |
| 5 | Ann | Dan | |
| 6 | Leo | Leo | |
| 7 | Cara | Mia | |
| 8 | Dan | Zoe |
=DATI.ORDINA(A2:A8)Scrivi Abe in A3 e compare per primo. =DATI.ORDINA(A2:A8;;-1) dà l'ordine dalla Z alla A; i due separatori consecutivi saltano sort_index. Per mettere in ordine alfabetico un elenco senza ripetizioni, ordina il risultato di UNICI: =DATI.ORDINA(UNICI(A2:A8)) (vedi UNICI).
DATI.ORDINA.PER: ordinare per una colonna che non restituisci
DATI.ORDINA può ordinare solo in base a una colonna dell'intervallo che restituisce. DATI.ORDINA.PER prende la chiave di ordinamento come intervallo separato, quindi puoi restituire solo i nomi, ordinati per vendite:
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Name | Region | Sales | By sales | |
| 2 | Ann | North | 120 | Cara | |
| 3 | Ben | South | 80 | Dan | |
| 4 | Cara | North | 200 | Ann | |
| 5 | Dan | East | 150 | Eve | |
| 6 | Eve | South | 95 | Ben | |
| 7 | Finn | North | 60 | Finn |
=DATI.ORDINA.PER(A2:A7;C2:C7;-1)Il risultato è Cara, Dan, Ann, Eve, Ben, Finn. La sintassi è =DATI.ORDINA.PER(array; by_array1; [sort_order1]; [by_array2; sort_order2]; ...). Ogni by_array deve avere tante righe quante array, altrimenti DATI.ORDINA.PER restituisce #VALORE!.
Per una top 3, prendi le prime righe del risultato: =INCLUDI(DATI.ORDINA.PER(A2:A7;C2:C7;-1);3) restituisce Cara, Dan e Ann. INCLUDI (in inglese TAKE) richiede Microsoft 365 o Excel 2024; in Excel 2021 usa =INDICE(DATI.ORDINA.PER(A2:A7;C2:C7;-1);SEQUENZA(3)).
Ordinare per più colonne
Dai a DATI.ORDINA.PER una coppia di chiave e ordine per ogni livello. Questa formula ordina per regione dalla A alla Z, poi dentro ogni regione per vendite dalla più alta alla più bassa:
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Name | Region | Sales | Name | Region | Sales | |
| 2 | Ann | North | 120 | Dan | East | 150 | |
| 3 | Ben | South | 80 | Cara | North | 200 | |
| 4 | Cara | North | 200 | Ann | North | 120 | |
| 5 | Dan | East | 150 | Finn | North | 60 | |
| 6 | Eve | South | 95 | Eve | South | 95 | |
| 7 | Finn | North | 60 | Ben | South | 80 |
=DATI.ORDINA.PER(A2:C7;B2:B7;1;C2:C7;-1)Prima viene East, poi le tre righe North come Cara (200), Ann (120) e Finn (60), poi South. DATI.ORDINA può fare lo stesso con matrici di numeri di colonna e di ordini, anche se DATI.ORDINA.PER si legge più facilmente:
=SORT(A2:C7,{2,3},{1,-1})
Questa è la forma inglese: i separatori dentro le parentesi graffe dipendono dalle impostazioni internazionali.
Ordinare in un ordine personalizzato
L'ordine alfabetico non è sempre quello che vuoi. Per ordinare le regioni come North, East, South, trasforma ogni regione nella sua posizione in quell'elenco con CONFRONTA e ordina per le posizioni:
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Name | Region | Sales | Name | Region | Sales | |
| 2 | Ann | North | 120 | Ann | North | 120 | |
| 3 | Ben | South | 80 | Cara | North | 200 | |
| 4 | Cara | North | 200 | Finn | North | 60 | |
| 5 | Dan | East | 150 | Dan | East | 150 | |
| 6 | Eve | South | 95 | Ben | South | 80 | |
| 7 | Finn | North | 60 | Eve | South | 95 |
CONFRONTA (in inglese MATCH) restituisce 1 per North, 2 per East e 3 per South, e DATI.ORDINA.PER ordina in base a quei numeri. Le righe con la stessa chiave mantengono il loro ordine originale, quindi le righe North restano Ann, Cara, Finn. Lo stesso trucco ordina mesi o giorni della settimana per nome: elencali in ordine di calendario dentro CONFRONTA. Una regione che manca dall'elenco riceve #N/D da CONFRONTA; usa IFERROR(MATCH(B2:B7,{"North","East","South"},0),99) (forma inglese, per le parentesi graffe) come chiave per mettere quelle righe in fondo.
Esercizio: nomi ordinati per vendite
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Name | Region | Sales | By sales | |
| 2 | Ann | North | 120 | ||
| 3 | Ben | South | 80 | ||
| 4 | Cara | North | 200 | ||
| 5 | Dan | East | 150 | ||
| 6 | Eve | South | 95 | ||
| 7 | Finn | North | 60 |
Tocca a te: In E2, restituisci solo i nomi, ordinati per vendite dalla più alta alla più bassa.
La funzione DATI.ORDINA o il pulsante Ordina
Entrambi ordinano, ma fanno lavori diversi:
| Dati > Ordina | DATI.ORDINA e DATI.ORDINA.PER | |
|---|---|---|
| Cambia la tabella originale | Sì | No, il risultato va in nuove celle |
| Si aggiorna quando i dati cambiano | No, va riordinata | Sì |
| Funziona in Excel 2019 e precedenti | Sì | No |
| Il risultato si può modificare cella per cella | Sì | No, è una sola formula |
| Si può racchiudere in un'altra formula | No | Sì, per esempio =INCLUDI(DATI.ORDINA(A2:C7;3;-1);3) |
Usa il pulsante per sistemare una tabella una volta. Usa la funzione per un report o una dashboard che deve restare ordinata mentre i dati cambiano. Se le celle sotto o a destra della formula non sono vuote, la funzione mostra #ESPANSIONE! invece dell'elenco ordinato; svuotale e l'elenco compare (vedi errore #ESPANSIONE!).
Domande frequenti
Come ordino i dati con una formula in Excel?
Usa DATI.ORDINA: =DATI.ORDINA(A2:C7;3;-1) restituisce A2:C7 ordinata per la terza colonna, dalla più grande. Ometti gli ultimi due argomenti, =DATI.ORDINA(A2:A8), per ordinare per la prima colonna dal più piccolo al più grande, o dalla A alla Z per il testo.
Che differenza c'è tra DATI.ORDINA e DATI.ORDINA.PER?
DATI.ORDINA ordina in base a una colonna dell'intervallo che restituisce, scelta per numero. DATI.ORDINA.PER ordina in base a qualsiasi intervallo tu le dia, anche uno che non restituisci: =DATI.ORDINA.PER(A2:A7;C2:C7;-1) restituisce solo i nomi, ordinati per vendite. DATI.ORDINA.PER accetta anche più chiavi di ordinamento direttamente.
Come metto un elenco in ordine alfabetico in Excel?
Seleziona una cella dell'elenco e fai clic su Dati > Ordina dalla A alla Z per riordinarlo sul posto. Per tenere l'originale e avere una copia ordinata che si aggiorna, scrivi =DATI.ORDINA(A2:A8) in una cella vuota; usa =DATI.ORDINA(A2:A8;;-1) per l'ordine dalla Z alla A.
Come ordino per due colonne con una formula?
Dai a DATI.ORDINA.PER due coppie di chiave e ordine: =DATI.ORDINA.PER(A2:C7;B2:B7;1;C2:C7;-1) ordina per regione dalla A alla Z e, dentro ogni regione, per vendite dalla più alta alla più bassa.
Quali versioni di Excel hanno DATI.ORDINA e DATI.ORDINA.PER?
Excel 2021, Excel 2024 e Microsoft 365. In Excel 2019 e precedenti mostrano #NOME?, e per ordinare si usa il pulsante Ordina della scheda Dati.