Come utilizzare la funzione RANK.EQ in Microsoft Excel
Riordinare manualmente le tue tabelle Excel ogni volta che cambia un punteggio è una perdita di tempo. La funzione RANK.EQ automatizza le classifiche assegnando le posizioni istantaneamente. Che tu stia monitorando le vendite o i tempi di corsa, ecco come mantenere i tuoi dati dinamici e accurati.
In precedenza, RANK era l'unica funzione di classificazione di Excel. Tuttavia, nel 2010, Microsoft ha introdotto RANK.EQ (identico al vecchio RANK) e RANK.AVG (una nuova opzione che restituisce la media dei ranghi in caso di parità). In questa guida, userò RANK.EQ, poiché è lo standard moderno e funziona esattamente nello stesso modo di RANK.
Come funziona la funzione RANK.EQ
Comprendere la sintassi
La funzione RANK.EQ identifica la posizione di un numero rispetto agli altri in un elenco, fornendo una classifica "live" che si aggiorna automaticamente. La funzione segue una sintassi semplice:
=RANK.EQ(number, ref, [order])dove :
- numero (obbligatorio) è il valore che vuoi classificare.
- ref (obbligatorio) è l'intervallo o l'array di numeri con cui stai confrontando il valore. I valori non numerici (come testo o celle vuote) vengono ignorati.
- order (opzionale) determina la direzione del ranking. Usa 0 (o lascialo vuoto) per un ranking discendente, oppure 1 per un ranking ascendente.
Se più valori hanno lo stesso rango, RANK.EQ assegna loro il rango più alto di quel gruppo. Ad esempio, se due persone ottengono lo stesso punteggio più alto, entrambe ricevono un rango di 1 e il punteggio successivo più alto riceve un rango di 3.
La funzione RANK funziona meglio con le tabelle di Excel perché gestiscono automaticamente l'espansione dell'intervallo e i riferimenti strutturati. Tuttavia, se devi utilizzare un intervallo di celle normale, blocca il tuo ref utilizzando i segni del dollaro—come $B$2:$B$10.
Per seguire mentre leggi, scarica una copia gratuita del workbook Excel utilizzato negli esempi. Dopo aver cliccato sul link, troverai il pulsante di download nell'angolo in alto a destra dello schermo, e quando apri il file, puoi accedere a ciascun caso d'uso in una scheda del foglio di lavoro separata.
Caso d'uso 1: Creare una classifica dinamica
Ordina le voci senza riordinare le righe
RANK.EQ identifica i migliori risultati mantenendo i tuoi dati nel loro ordine originale.
Lo scenario: Hai una tabella Excel chiamata T_Sales. Include una colonna ID che rappresenta l'ordine in cui i dettagli sono stati firmati. Vuoi il rango nella colonna A in modo che le classifiche siano visibili, ma devi mantenere la tabella ordinata per ID per corrispondere alle tue ricevute fisiche.
Per generare queste classifiche, digita questa formula nella cella A2 e premi Invio:
=RANK.EQ([@Revenue], [Revenue], 0)Ecco come funziona la formula:
- [@Revenue] guarda al fatturato per la riga corrente. Per l'ID 101, vede 52000.
- [Revenue] confronta quel valore con ogni numero dell'intera colonna.
- 0 garantisce che la persona con il fatturato più alto (Elena) venga assegnata al rango 1. Puoi omettere questo per una formula più pulita.
Perché non usare semplicemente l'ordinamento della tabella?
È allettante semplicemente ordinare dal più grande al più piccolo usando la freccia del filtro in cima alla colonna Ricavi. Tuttavia, oltre a sconvolgere l'ordine originale degli ID, è una soluzione statica a un problema dinamico. Non appena aggiungi una nuova vendita o aggiorni un valore di ricavo, dovresti riapplicare o mantenere l'ordinamento.
Usando RANK.EQ, crei un sistema "imposta e dimentica". Ti permette di mantenere la tua tabella principale nel suo ordine originale, e la formula si estende verso il basso a qualsiasi nuova riga che aggiungi, il che significa che le classifiche si aggiornano all'istante.
Sfrutta al massimo i tuoi dati
Per rendere il risultato ancora più significativo, usa il rango nella colonna A come motore di una formula SORTBY per visualizzare automaticamente i tuoi dati partendo dal rango 1.
In una cella vuota, digita:
=SORTBY(T_Sales, T_Sales[Rank], 1)Questo crea una copia dinamica della tua tabella che rimane ordinata da 1 a 5. Anche se la tua tabella di origine resta ordinata per ID, questa nuova lista garantisce che il rango 1 sia sempre in cima. Non appena i dati cambiano, questa lista si aggiorna automaticamente.
Caso d'uso 2: Classifica dei tempi più veloci
Gestire scenari in cui vince il numero più basso
Invertendo l'argomento order della funzione RANK.EQ, puoi garantire che i numeri più piccoli siano riconosciuti come i "vincitori."
Lo scenario: Stai registrando i tempi sul giro in una tabella chiamata T_Results. Devi mantenere questa tabella nell'ordine originale della griglia di partenza (StartPos), ma vuoi comunque sapere chi detiene attualmente il giro più veloce.
Per classificare questi dal più veloce al più lento, digita questa formula nella cella B2:
=RANK.EQ([@Seconds], [Seconds], 1)
Questa volta, impostando l'argomento order su 1 si utilizza il ranking ascendente, garantendo che il tempo più basso sia classificato come 1.
Sfrutta al massimo i tuoi dati
Posizionando il rango nella colonna B, puoi ottenere una visualizzazione pulita del podio utilizzando insieme le funzioni FILTRO e ORDINA in una cella separata:
=SORT(FILTER(T_Results[[Rank]:[Seconds]], T_Results[Rank] <= 3), 1, 1)Questo crea un array secondario che seleziona solo i tre piloti più veloci. Poiché è collegato alla colonna Rank, il podio si aggiorna automaticamente anche se la tua tabella principale rimane ordinata per la colonna StartPos.
Caso d'uso 3: Risolvere i pareggi utilizzando una metrica secondaria
Usa i punti bonus per decidere la classifica finale
RANK.EQ assegna lo stesso rango ai punteggi in parità. Per creare una classifica unica che premi le prestazioni secondarie (come i punti bonus), puoi aggiungere COUNTIFS alla tua formula. Questo conta quante persone condividono lo stesso punteggio ma hanno un bonus più alto.
Lo scenario: Hai una tabella chiamata T_League. Tre giocatori sono a pari merito con 88 punti, quindi vuoi usare i loro punti bonus per risolvere il pareggio in modo che ogni classifica sia unica e giusta.
Per creare una classifica unica basata sul merito, digita questa formula nella cella A2:
=RANK.EQ([@Points], [Points]) + COUNTIFS([Points], [@Points], [Bonus], ">"&[@Bonus])
Questa formula calcola un rango base, quindi "spinge" verso il basso i giocatori pari in base ai loro punti bonus:
- RANK.EQ([@Points], [Points]) identifica il rango standard. Per tutti e tre i giocatori con 88 punti, questo restituisce 2 (perché Dakota è #1).
- COUNTIFS(...) è il criterio di spareggio. Guarda solo i giocatori che hanno esattamente gli stessi punti della riga corrente e conta quanti di loro hanno un bonus superiore a quello della riga corrente.
Prendiamo come esempio Blake (88 punti, 15 bonus):
- RANK.EQ vede che Blake è a pari merito per il secondo posto.
- COUNTIFS guarda tutti con 88 punti e chiede: "Chi ha un bonus più alto dei 15 di Blake?" Solo Emerson è idoneo, quindi il conteggio è 1.
- Excel aggiunge quindi quel conteggio (1) al rango di base (2). Di conseguenza, Blake è identificato come rango 3.
Poiché questo metodo utilizza funzioni standard, è incredibilmente veloce, restituisce un singolo valore per riga (rendendolo ideale per le tabelle di Excel) ed è facile da comprendere per gli altri.
Queste tecniche di classificazione garantiscono che ogni nuova voce trovi il suo posto nella classifica non appena la inserisci, il che significa che è un grande vantaggio per chiunque stia monitorando dati competitivi in tempo reale. Detto ciò, se hai solo bisogno di un elenco sequenziale che reagisca alle tue inserzioni o cancellazioni di dati man mano che avvengono, combina le funzioni SEQUENCE e COUNTA. In ogni caso, la chiave è l'automazione e il risparmio di tempo, vantaggi offerti da entrambi questi flussi di lavoro di Excel.








