Skip to main content

Kutools per Office — Una Suite. Cinque Strumenti. Ottieni di Più.

Come classificare i dati in ordine inverso in Excel?

Author Sun Last modified

In Excel, utilizzando la formula tipica =RANK(cella, intervallo) la formula assegnerà un rango ai tuoi dati in modo che il valore più grande riceva un rango di 1, mentre il valore più piccolo verrà assegnato al numero di rango più basso. Tuttavia, ci sono situazioni in cui potresti aver bisogno di invertire questa logica, dando al valore più piccolo il rango più alto e a quello più grande l'ultimo rango, come illustrato nello screenshot sottostante. Questo può essere particolarmente utile quando stai analizzando dati in cui valori più bassi rappresentano prestazioni migliori, come tempi di gara, costi o conteggi di errori.
A screenshot showing data ranked in reverse order in Excel

Classifica i dati in ordine inverso | Codice VBA: Assegna ranghi inversi automaticamente


Classifica i dati in ordine inverso

Per eseguire una classificazione inversa in Excel, puoi modificare leggermente la formula RANK standard specificando un argomento aggiuntivo. Questo approccio ti permette di classificare facilmente i dati dal più piccolo al più grande, invece dell'ordine predefinito.

Seleziona una cella vuota dove desideri che appaia il risultato della classifica inversa. Supponendo che il tuo intervallo di dati sia nelle celle da B2 a B10, inserisci la seguente formula nella prima cella adiacente ai tuoi dati (ad esempio, nella cella C2):

=RANK(B2,$B$2:$B$10,1)

Dopo aver inserito la formula, premi Invio. Per applicare la formula alle altre celle nella tua colonna, usa la maniglia di riempimento: posiziona il mouse sull'angolo in basso a destra della cella in cui hai inserito la formula (C2), e quando il cursore si trasforma in un segno più, trascinalo verso il basso per riempire le celle rimanenti nell'intervallo accanto ai tuoi dati (fino a C10 in questo esempio). 
A screenshot of reverse rank formula applied in Excel

Se il tuo intervallo di dati è diverso, regola semplicemente i riferimenti delle celle all'interno della formula in base ai tuoi dati effettivi. Ricorda, se hai valori duplicati, la funzione RANK assegnerà lo stesso rango a quei valori e i ranghi successivi verranno saltati (ad esempio, se ci sono due elementi legati per il secondo posto, il prossimo rango sarà quattro).

La classificazione inversa è particolarmente preziosa quando vuoi evidenziare i valori più bassi o i tempi più veloci, e funziona bene su set di dati in cui i pareggi sono accettabili o previsti.


Codice VBA: Assegna ranghi inversi automaticamente

Per set di dati più grandi o scenari in cui i tuoi dati vengono aggiornati frequentemente e hai bisogno di una soluzione più automatizzata, puoi usare il codice VBA per assegnare rapidamente ed efficacemente i ranghi inversi. Questo metodo è ideale per gli utenti a proprio agio con piccole quantità di programmazione e mira a eliminare passaggi manuali ripetitivi.

1. Apri l'editor VBA facendo clic su Strumenti di sviluppo > Visual Basic. Nella finestra di Visual Basic for Applications, fai clic su Inserisci > Modulo e incolla il seguente codice nel riquadro Modulo:

Sub AssignReverseRank()
    Dim dataRange As Range
    Dim outputRange As Range
    Dim i As Long
    Dim j As Long
    Dim temp As Variant
    Dim arr As Variant
    Dim sortedArr As Variant
    Dim rankArr() As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set dataRange = Application.InputBox("Select the data range to rank (single column):", xTitleId, "", Type:=8)
    If dataRange Is Nothing Then Exit Sub
    
    Set outputRange = Application.InputBox("Select the first cell for output ranks:", xTitleId, "", Type:=8)
    If outputRange Is Nothing Then Exit Sub
    
    arr = dataRange.Value
    ReDim rankArr(1 To UBound(arr, 1), 1 To 1)
    sortedArr = arr
    
    ' Sort the array in ascending order
    For i = 1 To UBound(sortedArr, 1) - 1
        For j = i + 1 To UBound(sortedArr, 1)
            If sortedArr(i, 1) > sortedArr(j, 1) Then
                temp = sortedArr(i, 1)
                sortedArr(i, 1) = sortedArr(j, 1)
                sortedArr(j, 1) = temp
            End If
        Next j
    Next i
    
    ' Assign reverse ranks
    For i = 1 To UBound(arr, 1)
        For j = 1 To UBound(sortedArr, 1)
            If arr(i, 1) = sortedArr(j, 1) Then
                rankArr(i, 1) = j
                Exit For
            End If
        Next j
    Next i
    
    outputRange.Resize(UBound(rankArr, 1), 1).Value = rankArr
End Sub

2. Per eseguire la macro, fai clic sul Run button pulsante Esegui o premi F5. Ti verrà chiesto di selezionare l'intervallo dei tuoi dati (scegli una singola colonna che desideri classificare in ordine inverso) e quindi seleziona la prima cella in cui desideri che vengano visualizzati i risultati della classifica. Fai clic su OK dopo ogni selezione.

Questa macro ordina i tuoi dati in ordine crescente e assegna i ranghi inversi di conseguenza, posizionando il valore più piccolo come rango 1. È particolarmente utile per classificare migliaia di voci in una volta sola o per automatizzare la classifica in report che si aggiornano regolarmente.

Quando utilizzi questa macro, assicurati che i tuoi dati siano contigui e contengano solo valori numerici. Qualsiasi cella non numerica o vuota potrebbe comportare un output errato, quindi è meglio pulire i tuoi dati prima. Inoltre, salvare la cartella di lavoro prima di eseguire le macro è una buona precauzione per prevenire cambiamenti indesiderati.


I migliori strumenti per la produttività in Office

🤖 Kutools AI Aide: Rivoluziona l’analisi dei dati grazie a: Esecuzione intelligente | Genera codice | Crea formule personalizzate | Analizza dati e crea grafici | Attiva Funzioni avanzate
Funzionalità più usate: Trova, evidenziazione o contrassegna duplicati | Elimina righe vuote | Unisci colonne o celle senza perdere dati | Arrotonda senza formula...
Super RICERCA.VERT: Ricerca VERT per criteri multipli | Ricerca VERT per valori multipli | Ricerca su più fogli | Corrispondenza approssimativa...
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa | Elenco a discesa dipendente | Elenco a discesa multi-selezione...
Gestore colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Cambia stato di visibilità delle colonne nascoste | Confronta intervalli & colonne...
Funzionalità in primo piano: Attenzione della griglia | Visualizzazione di progettazione | Barra delle formule avanzata | Gestore di cartelle di lavoro & fogli | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email per elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...)...
Top15 strumenti:12 strumenti Testo (Aggiungi testo, Elimina Caratteri Specifici, ...) |50+ tipi di grafico (Diagramma di Gantt, ...) |40+ formule pratiche (Calcola letà in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci Immagine da percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti Unione & Dividi (Unione avanzata righe, Dividi celle, ...) | ... e altro ancora
Usa Kutools nella lingua che preferisci – supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre lingue!

Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e farti risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...


Office Tab porta le schede su Office e rende il tuo lavoro molto più semplice

  • Abilita la modifica e lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra invece che in nuove finestre.
  • Aumenta la produttività del50% e riduce centinaia di clic del mouse ogni giorno!

Tutti gli add-in Kutools. Un solo programma di installazione

La suite Kutools for Office include add-in per Excel, Word, Outlook & PowerPoint più Office Tab Pro, ideale per i team che lavorano su più app di Office.

Excel Word Outlook Tabs PowerPoint
  • Suite tutto-in-uno — Add-in per Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Un solo programma di installazione, una sola licenza — configurazione in pochi minuti (pronto per MSI)
  • Funzionano meglio insieme — produttività ottimizzata su tutte le app Office
  • Prova completa30 giorni — nessuna registrazione, nessuna carta di credito
  • Massimo risparmio — costa meno rispetto all’acquisto singolo degli add-in