Sökning med flera kriterier med INDEX och MATCH
När man har att göra med en stor databas i ett Excel-kalkylblad med flera kolumner och radtexter är det alltid svårt att hitta något som uppfyller flera kriterier. I det här fallet kan du använda en matrisformel med the INDEX och MATCH ffackföreningar.
Hur gör man en uppslagning med flera kriterier?
Att ta reda på produkt som är vit och Medium-storlek med ett pris av $18 som visas i bilden ovan kan du dra fördel av den booleska logiken för att generera en array med 1:or och 0:or för att visa raderna som uppfyller kriterierna. MATCH-funktionen kommer då att hitta positionen för den första raden som uppfyller alla kriterier. Efter det kommer INDEX att hitta motsvarande produkt-ID på samma rad.
Generisk syntax
=INDEX(return_range,MATCH(1,(criteria_value1=criteria_range1*criteria_value2=criteria_range2*(…),0))
√ Obs! Detta är en matrisformel som kräver att du anger med ctrl + shift + ange.
- return_range: Området där du vill att kombinationsformeln ska returnera produkt-ID:t. Här hänvisar till produkt-ID-sortimentet.
- criteria_value: Kriterierna som används för att lokalisera produkt-ID:ts position. Här avses värdena i cellerna H4, H5 och H6.
- criteria_range: Motsvarande intervall där kriterier_värden är listade. Här avses färg, storlek och prisklasser.
- match_type 0: Tvingar MATCH att hitta det första värdet som exakt är lika med letauppvärde.
För att hitta produkten som är vit och Medium-storlek med ett pris av $18, vänligen kopiera eller ange formeln nedan i cellen H8 och tryck på ctrl + shift + ange för att få resultatet:
= INDEX (B5: B10,MATCH(1,("Vit"=C5: C10) * ("Medium"=D5: D10) * (18=E5: E10), 0))
Eller använd en cellreferens för att göra formeln dynamisk:
= INDEX (B5: B10,MATCH(1,(H4=C5: C10) * (H5=D5: D10) * (H6=E5: E10), 0))
Förklaring av formeln
=INDEX(B5:B10,MATCH(1,(H4=C5:C10)*(H5=D5:D10)*(H6=E5:E10),0))
- (H4=C5:C10)*(H5=D5:D10)*(H6=E5:E10): Formeln jämför färgen i cellen H4 mot alla färger i sortimentet C5: C10; jämför storleken i H5 mot alla storlekar i D5: D10; jämför priset i H6 mot alla priser i E5: E10. Det första resultatet är så här:
{TRUE;FALSE;TRUE;FALSE;TRUE;FALSE}*{FALSE;FALSE;TRUE;TRUE;TRUE;FALSE}*{FALSE;FALSE;FALSE;TRUE;TRUE;FALSE}.
Multiplikationen kommer att omvandla TRUEs och FALSEs till 1:or och 0:or:
{1;0;1;0;1;0}*{0;0;1;1;1;0}*{0;0;0;1;1;0}.
Efter multiplikation kommer vi att ha en enkel array så här:
{0;0;0;0;1;0}. - MATCH (1,(H4=C5:C10)*(H5=D5:D10)*(H6=E5:E10), 0) = MATCH (1,{0;0;0;0;1;0}, 0): Matchningstypen 0 frågar MATCH-funktionen för att hitta den exakta matchningen. Funktionen kommer då att returnera positionen för 1 i matrisen {0;0;0;0;1;0}, vilket är 5.
- INDEX(B5: B10,MATCH (1,(H4=C5:C10)*(H5=D5:D10)*(H6=E5:E10), 0)) = INDEX (B5: B10,5): INDEX -funktionen returnerar 5värdet i produkt-ID-intervallet B5: B10, vilket är 30005.
Relaterade funktioner
Excel INDEX -funktionen returnerar det visade värdet baserat på en given position från ett intervall eller en array.
Excel MATCH -funktionen söker efter ett specifikt värde i ett cellintervall och returnerar värdets relativa position.
Relaterade formler
Sök upp närmaste matchningsvärde med flera kriterier
I vissa fall kan du behöva leta upp närmaste eller ungefärliga matchningsvärde baserat på mer än ett kriterium. Med kombinationen av INDEX-, MATCH- och IF -funktioner kan du snabbt få det gjort i Excel.
Ungefärlig matchning med INDEX och MATCH
Det finns tillfällen då vi behöver hitta ungefärliga matchningar i Excel för att utvärdera medarbetares prestanda, betygsätta elevernas poäng, beräkna porto baserat på vikt, etc. I denna handledning kommer vi att prata om hur man använder INDEX- och MATCH -funktionerna för att hämta resultat vi behöver.
Sökvärden från ett annat kalkylblad eller arbetsbok
Om du vet hur man använder VLOOKUP-funktionen för att söka efter värden i ett kalkylblad, kommer vlookup-värden från ett annat kalkylblad eller arbetsbok inte att vara ett problem för dig. Handledningen visar dig hur du söker upp värden från ett annat kalkylblad i Excel.
De bästa Office-produktivitetsverktygen
Kutools för Excel - Hjälper dig att sticka ut från mängden
Kutools för Excel har över 300 funktioner, Se till att det du behöver bara är ett klick bort...
Fliken Office - Aktivera läsning och redigering av flikar i Microsoft Office (inkluderar Excel)
- En sekund att växla mellan dussintals öppna dokument!
- Minska hundratals musklick åt dig varje dag, säg adjö till mushanden.
- Ökar din produktivitet med 50 % när du visar och redigerar flera dokument.
- Ger effektiva flikar till Office (inklusive Excel), precis som Chrome, Edge och Firefox.