RANK -funksjoner i Excel - Få rangering av nummer i serien

Last ned eksempel på arbeidsbok

Last ned eksemplet på arbeidsbok

Denne opplæringen viser hvordan du bruker Excel RANK -funksjon i Excel for å rangere et tall i en serie.

RANK Funksjon Oversikt

RANK Funksjonsrangering av et tall i en serie.

For å bruke funksjonen RANK Excel -regneark, velg en celle og skriv:

(Legg merke til hvordan formelinngangene vises)

RANK -funksjon Syntaks og innganger:

1 = RANK (nummer, ref, rekkefølge)

Nummer - Nummeret du vil bestemme rangen til.

ref - En rekke tall.

rekkefølge - VALGFRITT. Et tall som indikerer om man skal rangere synkende (0 eller utelatt) eller stigende (ikke-null tall)

Hva er RANK -funksjonen?

Excel RANK -funksjonen forteller deg rangen til en bestemt verdi hentet fra et dataområde. Det vil si hvor langt verdien er fra toppen eller bunnen når dataene blir satt i rekkefølge.

RANK er en "kompatibilitet" -funksjon

Fra Excel 2010 erstattet Microsoft RANK med to varianter: RANK.EQ og RANK.AVG.

Den eldre RANK -funksjonen fungerer fortsatt, så alle eldre regneark som bruker den, vil fortsette å fungere. Du bør imidlertid bruke en av de nyere funksjonene når du ikke trenger å være kompatibel med eldre regneark.

Slik bruker du RANK -funksjonen

Bruk RANK slik:

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

Over er en tabell med data som viser høyder til en vennegjeng. Vi vil vite hvor Gunther rangerer på listen.

RANK tar tre argumenter:

  • Den første er verdien du vil rangere (vi har satt denne til C10, Gunthers høyde, men vi kan også sette verdien direkte som 180)
  • Den andre er dataområdet - C4: C13
  • Den tredje er rekkefølgen på rangeringen
    • Hvis du setter dette til FALSE, 0, eller lar det stå tomt, blir den høyeste verdien rangert som #1 (synkende rekkefølge)
    • Hvis du setter dette til TRUE eller et tall som ikke er null, blir den laveste verdien rangert som #1 (stigende rekkefølge)

RANK bestemmer at Gunther er 4th høyeste i gruppen, og hvis vi setter dataene i orden, ser vi at dette er sant:

Noen få viktige punkter om RANK -funksjonen:

  • Når du bestemmer rekkefølgen, vil tekststrenger resultere i en #VERDI! feil
  • Som du nettopp har sett, trenger du ikke sortere dataene for at RANK skal fungere riktig

Hvordan RANK håndterer slips

I tabellen nedenfor har jeg lagt til en kolonne i tabellen som returnerer rangen til hvert medlem av gruppen. Jeg brukte følgende formel:

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

Vær oppmerksom på at jeg har låst dataområdet $ C $ 4: $ C $ 13 ved å velge "C4: C13" i formellinjen, og deretter trykke F4. Dette holder denne delen av formelen den samme, slik at du kan kopiere den ned i tabellen uten at den endres.

Vi har slips! Både Joey og Mike er 178 cm høye.

I slike tilfeller tildeler RANK begge verdiene den høyeste rangen - så både Joey og Mike er rangert som 5th. På grunn av uavgjort er det ingen 6th plass, så den nest høyeste vennen, Phoebe, er på 7th plass.

Hvordan bruke RANK.EQ

RANK.EQ fungerer på samme måte som RANK. Du bruker det slik:

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

Som du kan se her, definerer du med RANK.EQ nøyaktig de samme argumentene som med RANK, nemlig tallet du vil rangere, dataområdet og rekkefølgen. Vi leter etter Gunthers rang igjen, og RANK.EQ returnerer det samme resultatet: 4.

RANK.EQ håndterer også slips på samme måte som RANK, som vist nedenfor:

Igjen er Joey og Mike uavgjort på 5. plass.

Hvordan bruke RANK.AVG

RANK.AVG er veldig lik RANK.EQ og RANK. Det er bare forskjellig i måten det håndterer slips. Så hvis du bare ser etter rangeringen til en enkelt verdi, vil alle tre funksjonene returnere det samme resultatet:

1 = RANK.AVG (C6, C4: C13, TRUE)

Igjen, det samme resultatet - 4th plass til Gunther.

La oss nå se på hvordan RANK.AVG er forskjellig når det gjelder bånd. Så denne gangen har jeg brukt denne funksjonen:

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

Og her er resultatene:

Nå ser vi noe annerledes!

RANK.AVG gir Joey og Mike samme rangering, men denne gangen får de gjennomsnittlig rangering som de ville ha fått hvis høyden ikke var lik.

Så de ville blitt rangert som 5th og 6th, men RANK.AVG har returnert gjennomsnittet på 5 og 6: 5,5.

Hvis mer enn to verdier er bundet, gjelder den samme logikken. La oss late som Phoebe har en plutselig vekstspurt, og høyden øker til 178 cm over natten. Nå returnerer RANK.AVG følgende:

Alle tre vennene hvordan rang 6th: (5 + 6 + 7) / 3 = 6.

RANK IF Formula

Excel har ikke en innebygd formel som lar deg rangere verdier basert på et gitt kriterium, men du kan oppnå det samme resultatet med COUNTIFS.

Si at vennene vil opprette to separate rangordre, en for menn og en for kvinner.

Her er formelen vi vil bruke:

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

COUNTIFS teller antall verdier i et gitt dataområde som oppfyller kriterier du angir. Formelen ser litt skremmende ut, men det er mer fornuftig hvis vi deler den ned linje for linje:

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

Så de første kriteriene vi har angitt er at området i C4: C13 (igjen, låst med dollartegnene slik at vi kan dra formelen nedover tabellen uten at området endres) må matche verdien i C4.

Så for denne raden ser vi på Richard, og verdien hans er C4 er "Mann". Så vi skal bare telle folk som også har "Mann" i denne kolonnen.

Det andre kriteriet er at D4: D13 må være høyere enn D4. Dette gir effektivt antall personer i tabellen som har verdi i D -kolonnen større enn Richards.

Deretter legger vi 1 til resultatet. Vi må gjøre dette fordi ingen er høyere enn Richard, så formelen ville returnere 0 hvis ikke.

Vær oppmerksom på at denne formelen håndterer bånd på samme måte som RANK.EQ.

Lær mer på hovedsiden for Excel COUNTIF -funksjonen.

RANK -funksjon i Google Sheets

RANK -funksjonen fungerer nøyaktig det samme i Google Sheets som i Excel:

RANK Eksempler i VBA

Du kan også bruke RANK -funksjonen i VBA. Type:
application.worksheetfunction.rank (nummer, ref, rekkefølge)

Utfører følgende VBA -utsagn

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"))Område ("D7") = Application.WorksheetFunction.Rank (Range ("B7"), Range ("A2: A7"), Range ("C7"))

vil gi følgende resultater

For funksjonsargumentene (tall osv.) Kan du enten skrive dem inn direkte i funksjonen, eller definere variabler som skal brukes i stedet.

Gå tilbake til listen over alle funksjoner i Excel

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave