Hur du använder INDEX-funktionen i Excel (6 praktiska exempel)

  • Dela Detta
Hugh West

INDEX är en av de 10 mest använda Excel-funktionerna. I den här handledningen får du en fullständig uppfattning om hur funktionen INDEX funktionen fungerar i Excel enskilt och tillsammans med andra Excel-funktioner.

Du kommer att få Excel INDEX funktion i två former: Array Form och Referensformulär .

Excel INDEX-funktionen i form av en matris (snabbvisning):

När du vill returnera ett värde (eller flera värden) från ett enda intervall använder du array-formen av INDEX funktion.

Excel INDEX-funktionen i referensformuläret (snabbvisning):

När du vill returnera ett värde (eller flera värden) från flera intervall använder du referensformen av INDEX funktion.

Ladda ner arbetsbok i Excel

Ladda ner Excel-arbetsboken så att du kan öva själv.

Användning av INDEX-funktionen.xlsx

Introduktion till INDEX-funktionen i Excel

Funktionsmål:

Den returnerar ett värde eller en referens till cellen i skärningspunkten mellan en viss rad och kolumn i ett givet intervall.

Syntax för INDEX-funktionen i form av en matris:

=INDEX (array, row_num, [column_num])

Argument:

argument krävs/ frivilligt värde
matris Krävs Skicka ett intervall av celler eller en arraykonstant till detta argument.
row_num Krävs Överlämna radnumret i cellintervallet eller arraykonstanten.
col_num Valfritt Överlämna kolonnnumret i cellintervallet eller arraykonstanten.

Observera:

  • Om du använder både row_num och kolumn_nummer argumenten, den INDEX funktionen returnerar värdet från cellen i skärningspunkten mellan row_num och kolumn_nummer .
  • Om du ställer in row_num eller . kolumn_nummer till 0 (noll), får du hela kolumnvärdena respektive hela radvärdena i form av matriser. Du kan infoga dessa värden i cellerna med hjälp av matrisformeln.

Syntax för INDEX-funktionen i referensform:

=INDEX (referens, row_num, [column_num], [area_num])

Argument:

argument krävs/ frivilligt värde
referens Krävs Överlämna mer än ett intervall eller en matris
row_num Krävs Skicka radnumret i ett specifikt cellområde
col_num Valfritt Skicka kolumnnumret i ett specifikt cellområde
area_num Valfritt Skicka det områdesnummer som du vill välja från en grupp av områden.

Observera:

  • Om du skickar mer än ett intervall eller en matris som matrisvärde ska du också skicka area_num.
  • Om den area_num inte finns, är den INDEX Funktionen kommer att fungera med det första intervallet. Om du anger ett värde som area_num , den INDEX fungerar inom det specifika området.
  • Om begreppen inte är klara, oroa dig inte; gå vidare till nästa steg, där jag kommer att visa dig ett stort antal exempel på hur du använder Excels INDEX fungera effektivt.

6 exempel på användning av INDEX-funktionen separat och tillsammans med andra Excel-funktioner

Exempel 1: Välj ett objekt från en lista

Användning av Excel INDEX Funktionen kan vi hämta vilket objekt som helst från en lista. Du kan använda hårt kodade rad- eller kolumnnummer i formeln eller använda en cellreferens.

En dimensionell lista med en enda kolumn:

Om vi till exempel vill hämta den tredje produkten i listan kan vi använda följande formel i cell C13 , efter att ha angett radnumret (med andra ord serienumret) i cell C12 .

=INDEX(B5:B10,C12)

Eller,

=INDEX(B5:B10,3)

En dimensionell lista med en enda rad:

På samma sätt kan vi hämta ett objekt från en enskild rad med hjälp av INDEX funktion. Ange serienumret i kolumn B och tillämpa följande formel i cell C20 :

=INDEX(C17:H17,,B20)

Eller,

=INDEX(C17:H17,3)

Du kan också skriva serienumret direkt i formeln i stället för att använda cellreferensen, men vi rekommenderar att du använder cellreferensen eftersom det gör ditt arbete mer dynamiskt.

Hämta objekt från en flerdimensionell lista:

Om du vill hämta ett objekt från en lista med flera dimensioner måste du ange rad- och kolumnnummer i INDEX funktion.

Om du till exempel vill hämta objektet från 3:e raden och 4:e kolumnen i listan, måste du infoga följande formel i cell C33 .

=INDEX(C26:H29,C31,C32)

Observera:

  • Om du anger ett radnummer som ligger utanför listans räckvidd (den matris som du har angett i INDEX funktion), kommer det att orsaka en #REF! fel .
  • Du kan också hänvisa till en array som en referens och tillämpa INDEX funktion. Till exempel kan formeln =INDEX({1,2,3;4,5,6;7,8,9;10,11,12},2,3) kommer att ge 8. konstanten i matrisen {1,2,3;4,5,6;7,8,9;10,11,12} innehåller kolumner separerade med semikolon.

Läs mer: Hur man använder INDEX MATCH med Excel VBA

Exempel 2: Välja objekt från flera listor

Du kanske redan har märkt att INDEX funktionen har ytterligare ett valfritt argument som är [area_num]. På så sätt kan du ange flera matriser eller referensområden i INDEX-funktionen och ange från vilken matris funktionen ska returnera ett objekt eller värde.

Vi har till exempel två listor här, den ena är för Windows och den andra är för MS Office. Du kan använda följande formel för att få ett värde från fönster lista.

=INDEX((D5:G9,I5:L9),C11,E11,1)

Eller,

=INDEX((D5:G9,I5:L9),C11,E11,2)

för att hämta ett objekt från MS Office lista.

Observera:

Om du inte anger ett nummer i formeln kommer Excel som standard att ange värdet i område 1.

Exempel 3: Kombinera MATCH-funktionen med INDEX för att matcha flera kriterier och returnera värdet

MATCH-funktionen returnerar den relativa positionen för ett objekt i en matris som matchar ett angivet värde i en angiven ordning. Du kan enkelt hämta rad- och kolumnnumren för ett specifikt intervall med hjälp av MATCH funktion.

Låt oss se följande exempel: Vi vill matcha vissa kriterier som anges i cellerna C12 och C13.

Steg:

  • Tillämpa följande formel i Cell C14 :
=INDEX(B5:E10,MATCH(C13,B5:B10,0),MATCH(C12,B4:E4,0))

  • Tryck på ENTER.

Läs mer: INDEX Matcha flera kriterier i rader och kolumner i Excel

🔎 Hur fungerar denna formel?

Låt oss se hur denna formel fungerar del för del.

  • MATCH(C12,B4:E4,0)

Utgång: 3

Förklaring: MATCH funktionen tar emot indata från cell C12 och utför en exakt matchning inom intervallet B4:E4 . 0 siffran i det sista argumentet visar att det är en exakt matchning här. Slutligen, eftersom posten i C12 finns i den tredje kolumnen i B4:E4 intervallet, ger funktionen 3.

  • MATCH(C13,B5:B10,0)

Utgång: 3

Förklaring : Samma som den första MATCH som förklaras ovan. Men den här gången fungerar funktionen radvis eftersom intervallet B5:B10, vilket innebär att artiklarna finns på olika rader men i en enda kolumn.

  • INDEX(B5:E10,MATCH(C13,B5:B10,0),MATCH(C12,B4:E4,0))

Utgång: 1930

Förklaring : Vi kan förenkla formeln genom att använda utgångarna från de två MATCH-delarna. Det blir alltså: INDEX(B5:E10,3,3). INDEX-funktionen kommer alltså att gå till rad 3 och sedan till kolumn 3 inom intervallet B5:E10. Och från korsningen mellan rad och kolumn kommer den att återge detta värde.

Läs mer: Hur man använder INDEX MATCH-formeln i Excel (9 exempel)

Exempel 4: Kombinera funktionerna INDEX, MATCH och IF för att matcha flera kriterier från två listor

Om vi har två listor och vill matcha flera kriterier efter att ha valt ett, vad gör vi då? Här ger vi dig en formel.

Här är vårt dataset och vi har försäljningsdata för Windows och MS Office i olika länder och under olika år.

Vi kommer att fastställa tre kriterier: Produkt namn, År, och Land, och hämta motsvarande försäljningsuppgifter.

Steg:

  • Anta att de fastställda kriterierna är- År: 2019 , Produkt: MS Office , och Land: Kanada .
  • Ställ in dem i celler C11, C12, och C13 respektive.
  • Tillämpa nu följande formel i Cell C14 och slå på ENTER.
=INDEX(INDEX((D5:G9,I5:L9),,,IF(C12="Windows",1,2)),MATCH(C13,B5:B9,0),MATCH(C11,INDEX((D5:G5,I5:L5),,,,IF(C12="Windows",1,2)),0))

  • Du kommer att se motsvarande försäljningsuppgifter i Cell C14 nu.
  • Du kan göra formeln mer dynamisk genom att använda Validering av uppgifter. .

🔎 Hur fungerar denna formel?

  • IF(C12="Windows",1,2))

Utgång : 2

Förklaring : Eftersom Cell C12 innehåller Windows , kriterierna inte är uppfyllda och IF-funktion återkommer 2.

  • INDEX((D5:G9,I5:L9),,,,IF(C12="Windows",1,2))

Utgång : {2017,2018,2019,2020;8545,8417,6318,5603;5052,8052,5137,5958;9590,6451,3177,6711;5126,3763,3317,9940}

Förklaring : Eftersom den IF(C12="Windows",1,2) delen ger 2, så formeln blir INDEX((D5:G9,I5:L9),,,,2) . Nu är det INDEX funktionen returnerar det andra intervallet som tilldelats den.

  • MATCH(C11,INDEX((D5:G5,I5:L5),,,,IF(C12="Windows",1,2)),0)

Utgång : 3

Förklaring : Eftersom IF(C12="Windows",1,2) del ger 2, så denna del blir MATCH(C11,INDEX((D5:G5,I5:L5),,,,2),0). Nu, INDEX((D5:G5,I5:L5),,,,2) delåterlämning I5:G5 som är {2017,2018,2019,2020} . Så den MATCH formeln blir MATCH(C11,{2017,2018,2019,2020},0) . och MATCH funktionen returnerar 3 eftersom värdet 2019 i Cell C11 är i tredje positionen i {2017,2018,2019,2020}.

  • MATCH(C13,B5:B9,0),

Utgång : 4

Förklaring : Den MATCH funktionen matchar värdet av Cell C13 i den B5:B9 och returnerar 4 eftersom det är positionen för strängen "Canada" i B5:B9 sortiment.

  • =INDEX({2017,2018,2019,2020;8545,8417,6318,5603;5052,8052,5137,5958;9590,6451,3177,6711;5126,3763,3317,9940},4,3)

Utgång : 3177

Förklaring : När alla små delar av formeln är utförda ser hela formeln ut så här: Den returnerar värdet där den fjärde raden och den tredje kolumnen skär varandra.

Läs mer: IF med INDEX-MATCH i Excel (3 lämpliga metoder)

Exempel 5: Återge en rad eller kolumn helt och hållet från ett intervall

Användning av INDEX Du kan också returnera en rad eller kolumn helt och hållet från ett intervall. Utför följande steg för att göra det.

Steg:

  • Säg att du vill returnera den första raden från Windows lista. Tillämpa följande formel i en valfri cell (här, i cell F11 ), och tryck på ENTER.
=INDEX(D6:G9,1,0)

  • Observera att vi har angett kolumnnumret 0. Vi kan också använda följande formel för att få fram hela raden, genom att sätta ett kommatecken efter argumentet row_num och lämna det som det är utan att ange något kolumnnummer.
=INDEX(D6:G9,1,)

  • Men om du bara skriver =INDEX(D6:G9,1) och slå på ENTER, får du bara det första värdet i den första raden, inte hela raden.
  • För att få fram den första kolumnen som en helhet tillämpar du följande formel. De saker som du bör tänka på när du vill få en hel rad returnerad gäller även i detta fall.
=INDEX(I6:L9,,1)

Observera:

  • Om du använder äldre Excel-versioner än Microsoft 365 måste du använda formeln Array för att returnera en rad eller kolumn från ett intervall med hjälp av INDEX Funktion.
  • I vårt dataset här består till exempel varje rad i försäljningsintervallet av fyra värden, så du måste välja fyra celler horisontellt och sedan ange INDEX funktion.
  • Tryck nu på CTRL + SHIFT + ENTER för att ange formeln som en matrisformel.
  • På samma sätt kan du visa hela kolumnen.
  • Om du vill returnera ett helt intervall tilldelar du bara intervallet till referensargumentet och anger 0 som kolumn- och radnummer. Här är en formel som exempel.
=INDEX(D6:G9,0,0)

Läs mer: Hur du matchar flera kriterier från olika matriser i Excel

Liknande läsningar

  • INDEX MATCH Flera kriterier i Excel (utan matrisformel)
  • Excel INDEX Matcha ett/flera kriterier med ett/flera resultat
  • Excel INDEX MATCH för att återge flera värden i en cell
  • INDEX MATCH Flera kriterier med jokertecken i Excel (en fullständig guide)
  • Hur man väljer specifika data i Excel (6 metoder)

Exempel 6: INDEX-funktionen kan också användas som cellreferens

I exempel 5 har vi sett hur man använder INDEX Du kan också använda följande enkla formel i en valfri cell för att få samma sak.

=D6:G6

Det jag försöker säga är att INDEX funktionen kan också returnera en cellreferens i stället för ett cellvärde. Jag kommer att använda INDEX(D6:G9,1,4) i stället för G6 I formeln ovan kommer formeln att se ut på följande sätt,

=D6:INDEX(D6:G9,1,4)

🔎 Utvärdering av denna formel:

  • Välj först den cell där formeln finns.
  • Gå till Formler flik>> Granskning av formler grupp>> Klicka på den Utvärdera formel kommandot.
  • Utvärdera formel öppnas.

  • I fältet Utvärdering får du formeln =D6:INDEX(D6:G9,1,4) .
  • Klicka nu på Utvärdera .
  • Formeln visar nu cellintervallet $D$6:$G$6 .
  • Så hela INDEX formeln har returnerat en cellreferens, inte ett cellvärde.

Vanliga fel när du använder INDEX-funktionen i Excel

Felet #REF!

Det inträffar-

  • När ditt argument row_num är högre än de befintliga radnumren i intervallet.
  • När ditt col_num-argument är högre än de befintliga kolonnnumren i intervallet.
  • När argumentet area_num är högre än de befintliga områdesnumren.

Felet #VALUE!

Det inträffar när du anger icke-numeriska värden som row_num, col_num eller area_num.

Slutsats

INDEX Funktion är en av de mest kraftfulla funktionerna i Excel. För att resa genom ett antal celler och hämta data från ett antal celler kommer du att använda en hel del tid Excel's INDEX funktion. Om du känner till ett unikt sätt att använda Excels INDEX funktion, låt oss veta i kommentarsfältet. Du kan besöka vår blogg för mer Excel-relaterat innehåll.

Hugh West är en mycket erfaren Excel-tränare och analytiker med över 10 års erfarenhet i branschen. Han har en kandidatexamen i redovisning och ekonomi och en magisterexamen i företagsekonomi. Hugh har en passion för undervisning och har utvecklat ett unikt undervisningssätt som är lätt att följa och förstå. Hans expertkunskap om Excel har hjälpt tusentals studenter och yrkesverksamma över hela världen att förbättra sina färdigheter och utmärka sig i sina karriärer. Genom sin blogg delar Hugh med sig av sin kunskap med världen, och erbjuder gratis Excel-handledning och onlineutbildning för att hjälpa individer och företag att nå sin fulla potential.