RANK-functies in Excel - Krijg rangorde van nummer binnen reeksen

Voorbeeldwerkboek downloaden

Download het voorbeeldwerkboek

Deze tutorial laat zien hoe je de Excel RANK-functie in Excel om een ​​getal in een reeks te rangschikken.

Overzicht functie RANG

De RANG Functie Rang van een getal binnen een reeks.

Om de RANK Excel-werkbladfunctie te gebruiken, selecteert u een cel en typt u:

(Let op hoe de formule-invoer verschijnt)

RANK-functie Syntaxis en invoer:

1 =RANK(getal,ref,volgorde)

nummer - Het nummer waarvan u de rang wilt bepalen.

ref - Een reeks getallen.

volgorde - OPTIONEEL. Een getal dat aangeeft of aflopend (0 of weggelaten) of oplopend (niet-nul getal) moet worden gerangschikt

Wat is de RANK-functie?

De Excel RANK-functie vertelt u de rangorde van een bepaalde waarde uit een gegevensbereik. Dat wil zeggen, hoe ver de waarde van de bovenkant of de onderkant is, wanneer de gegevens op volgorde worden gezet.

RANK is een "compatibiliteitsfunctie"

Vanaf Excel 2010 heeft Microsoft RANK vervangen door twee varianten: RANK.EQ en RANK.AVG.

De oudere RANK-functie werkt nog steeds, dus alle oudere spreadsheets die deze functie gebruiken, blijven functioneren. U moet echter een van de nieuwere functies gebruiken wanneer u niet compatibel hoeft te blijven met oudere spreadsheets.

Hoe de RANK-functie te gebruiken?

Gebruik RANK als volgt:

1 =RANG(C8,C4:C13,0)

Hierboven staat een tabel met gegevens met de hoogten van een groep vrienden. We willen weten waar Gunther op de lijst staat.

RANK heeft drie argumenten:

  • De eerste is de waarde die u wilt rangschikken (we hebben dit ingesteld op C10, Gunther's hoogte, maar we kunnen de waarde ook direct als 180 invoeren)
  • De tweede is het gegevensbereik - C4:C13
  • De derde is de rangorde
    • Als u dit instelt op FALSE, 0, of leeg laat, wordt de hoogste waarde gerangschikt als #1 (aflopende volgorde)
    • Als u dit instelt op TRUE of een ander getal dat niet nul is, wordt de laagste waarde gerangschikt als #1 (oplopende volgorde)

RANK bepaalt dat Gunther de 4 . ise de grootste van de groep, en als we de gegevens op een rij zetten, zien we dat dit waar is:

Een paar belangrijke punten over de RANK-functie:

  • Bij het bepalen van de volgorde zullen tekststrings resulteren in een #VALUE! fout
  • Zoals je zojuist hebt gezien, hoef je de gegevens niet te sorteren om RANK correct te laten werken

Hoe RANK omgaat met banden

In de onderstaande tabel heb ik een kolom aan de tabel toegevoegd die de rang van elk lid van de groep retourneert. Ik heb de volgende formule gebruikt:

1 =RANG(C4,$C$4:$C$13,0)

Merk op dat ik het gegevensbereik $ C $ 4: $ C $ 13 heb vergrendeld door "C4: C13" in de formulebalk te selecteren en vervolgens op F4 te drukken. Hierdoor blijft dit deel van de formule hetzelfde, zodat u het in de tabel kunt kopiëren zonder dat het verandert.

We hebben een gelijkspel! Zowel Joey als Mike zijn 178 cm lang.

In dergelijke gevallen kent RANK beide waarden de hoogste rang toe - dus zowel Joey als Mike worden gerangschikt 5e. Door de gelijkspel is er geen 6e plaats, dus de volgende langste vriend, Phoebe, is in 7e plaats.

Hoe RANK.EQ te gebruiken

RANK.EQ werkt op dezelfde manier als RANK. Je gebruikt het als volgt:

1 =RANG.EQ(C10,C4:C13,0)

Zoals je hier kunt zien, definieer je met RANK.EQ precies dezelfde argumenten als met RANK, namelijk het nummer dat je wilt rangschikken, het gegevensbereik en de volgorde. We zoeken opnieuw naar de rang van Gunther en RANK.EQ geeft hetzelfde resultaat: 4.

RANK.EQ behandelt ook banden op dezelfde manier als RANK, zoals hieronder weergegeven:

Nogmaals, Joey en Mike staan ​​op de 5e plaats.

Hoe RANK.AVG te gebruiken?

RANK.AVG lijkt erg op RANK.EQ en RANK. Het verschilt alleen in de manier waarop het met banden omgaat. Dus als u alleen op zoek bent naar de rangorde van een enkele waarde, geven alle drie de functies hetzelfde resultaat:

1 =RANG.AVG(C6,C4:C13,WAAR)

Nogmaals, hetzelfde resultaat - 4e plaats voor Gunther.

Laten we nu eens kijken hoe RANK.AVG verschilt in termen van banden. Dus deze keer heb ik deze functie gebruikt:

1 =RANG.AVG(C5,$C$4:$C$13,0)

En hier zijn de resultaten:

Nu zien we iets anders!

RANK.AVG geeft Joey en Mike dezelfde rang, maar deze keer krijgen ze de gemiddelde rang toegewezen die ze zouden hebben gekregen als hun lengte niet gelijk was geweest.

Ze zouden dus 5 . zijn gerangschikte en 6e, maar RANK.AVG heeft het gemiddelde van 5 en 6 geretourneerd: 5,5.

Als er meer dan twee waarden zijn gekoppeld, is dezelfde logica van toepassing. Laten we doen alsof Phoebe een plotselinge groeispurt heeft, en haar lengte neemt 's nachts toe tot 178 cm. Nu geeft RANK.AVG het volgende terug:

Alle drie vrienden hoe rang 6e: (5 + 6 + 7) / 3 = 6.

RANG ALS Formule

Excel heeft geen ingebouwde formule waarmee u waarden kunt rangschikken op basis van een bepaald criterium, maar u kunt hetzelfde resultaat bereiken met AANTALLEN.

Stel dat de vrienden twee afzonderlijke rangorden willen maken, één voor mannen en één voor vrouwen.

Dit is de formule die we zouden gebruiken:

1 = AANTAL.ALS($C$4:$C$13,C4,$D$4:$D$13,">"&D4) + 1

AANTAL.ALS telt het aantal waarden in een bepaald gegevensbereik dat voldoet aan de criteria die u opgeeft. De formule ziet er een beetje intimiderend uit, maar het is logischer als we het regel voor regel opsplitsen:

1234 =AANTALLEN.ALS($C$4:$C$13,C4,$D$4:$D$13,">"&D4) + 1

Dus het eerste criterium dat we hebben ingesteld, is dat het bereik in C4:C13 (opnieuw vergrendeld met de dollartekens zodat we de formule door de tabel kunnen slepen zonder dat het bereik verandert) moet overeenkomen met de waarde in C4.

Dus voor deze rij kijken we naar Richard, en zijn waarde is C4 is "Man". Dus we gaan alleen mensen tellen die ook "Man" in deze kolom hebben.

Het tweede criterium is dat D4:D13 hoger moet zijn dan D4. In feite geeft dit het aantal mensen in de tabel terug waarvan de waarde in de D-kolom groter is dan die van Richard.

Dan tellen we 1 op bij het resultaat. We moeten dit doen omdat niemand groter is dan Richard, dus de formule zou anders 0 opleveren.

Merk op dat deze formule banden op dezelfde manier behandelt als RANK.EQ.

Lees meer op de hoofdpagina voor de Excel AANTAL.ALS-functie.

RANK-functie in Google Spreadsheets

De RANK-functie werkt in Google Spreadsheets precies hetzelfde als in Excel:

RANK-voorbeelden in VBA

U kunt ook de RANK-functie in VBA gebruiken. Type:
applicatie.werkbladfunctie.rank(nummer,ref,order)

De volgende VBA-instructies uitvoeren:

123456 Range("D2")=Application.WorksheetFunction.Rank(Range("B2"),Range("A2:A7"))Range("D3")=Application.WorksheetFunction.Rank(Range("B3"),Range("A2:A7"))Range("D4")=Application.WorksheetFunction.Rank(Range("B4"),Range("A2:A7"))Range("D5")=Application.WorksheetFunction.Rank(Range("B5"),Range("A2:A7"),Range("C5"))Range("D6")=Application.WorksheetFunction.Rank(Range("B6"),Range("A2:A7"),Range("C6"))Range("D7")=Application.WorksheetFunction.Rank(Range("B7"),Range("A2:A7"),Range("C7"))

zal de volgende resultaten opleveren:

Voor de functieargumenten (getal, enz.), kunt u ze ofwel rechtstreeks in de functie invoeren, of variabelen definiëren om in plaats daarvan te gebruiken.

Keer terug naar de lijst met alle functies in Excel

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave