Indholdsfortegnelse
I denne artikel vil jeg vise dig hvordan du kan bruge IF med INDEX-MATCH i Excel. IF-funktion, INDEX-funktion, og MATCH-funktion er tre meget vigtige og meget udbredte funktioner i Excel. Når vi arbejder i Excel, skal vi ofte bruge en kombination af disse tre funktioner. I dag viser jeg dig, hvordan du kan kombinere disse funktioner ret omfattende på alle mulige måder.
Download arbejdsbog til øvelser
IF med INDEX-MATCH.xlsx3 metoder til at bruge IF med INDEX-MATCH i Excel
Her har vi et datasæt med Navne af nogle studerende, og deres Marks på Fysik og Kemi af en skole kaldet Sunflower Kindergarten.
Lad os forsøge at kombinere de IF-funktion , INDEX-funktion , og MATCH-funktion på alle mulige måder fra dette datasæt.
1. Indpak INDEX-MATCH i en IF-funktion for at bruge IF med INDEX-MATCH i Excel
Du kan indpakke en INDEX-MATCH-formel inden for en IF-funktion om nødvendigt på en eller anden måde.
Lad os for eksempel tænke et øjeblik på, at skolemyndighederne har besluttet at finde den elev, der har det laveste antal point i fysik.
Men det er kun, hvis det mindste tal i fysik er mindre end 40.
Hvis det ikke er tilfældet, er det ikke nødvendigt at finde frem til den studerende, og den vil vise "Ingen studerende" .
⧪ Hvordan kan skolemyndigheden opnå dette?
Let. De kan indpakke den INDEX-MATCH formel inden for en IF-funktion som denne formel:
=IF(MIN(C4:C13)<40,INDEX(B4:D13,MATCH(MIN(C4:C13),C4:C13,0),1),1), "Ingen studerende")
Se, da det mindste tal i fysik er mindre end 40 ( 20 i dette tilfælde), har vi fundet den elev med det mindste antal.
Det er Alfred Moyes.
⧪ Forklaring af formlen:
- MIN(C4:C13) returnerer den mindste værdi i kolonnen C4:C13 ( Karakterer i fysik ). I dette eksempel er det 20 . Se den MIN-funktion for nærmere oplysninger.
- Formlen bliver således IF(20<40,INDEX(B4:D13,MATCH(20,C4:C13,0),1),1), "Ingen studerende") .
- Da betingelsen i den IF-funktion ( 20<40 ) er TRUE returnerer den det første argument, INDEX(B4:D13,MATCH(20,C4:C13,0),0),1) .
- MATCH(20,C4:C13,0) søger efter et nøjagtigt match af 20 i kolonne C4:C13 (Karakterer i fysik) og finder en i den 4. row (I celle C7 ), så den returnerer 4 .
- Nu bliver formlen INDEX(B4:D13,4,1) . Den returnerer værdien fra 4. række og 1. kolonne i intervallet B4:D13 (Datasættet eksklusive den Kolonneoverskrifter ).
- Det er navnet på den studerende med det mindste antal i Fysik . og det er Alfred Moyes.
⧪ Flere opgaver at udføre:
Hvis du nu forstår denne formel, kan du så fortælle mig formlen til at finde den studerende med det højeste tal i kemi?
Det er kun, hvis det højeste tal er større end eller lig med 80. Hvis ikke, returneres "Ingen studerende".
Ja, du har gættet rigtigt, formlen bliver:
=IF(MAX(D4:D13)>=80,INDEX(B4:D13,MATCH(MAX(D4:D13),D4:D13,0),1), "Ingen studerende")
Se, da de højeste karakterer i kemi er større end 80 ( 95 i dette eksempel), har vi fået den studerende med de højeste karakterer i kemi.
Ironisk nok er det igen Alfred Moyes.
Læs mere: Excel INDEX MATCH til at returnere flere værdier i én celle
2. Brug IF-funktionen i INDEX-funktionen til at bruge IF med INDEX-MATCH i Excel
Vi kan også bruge en IF-funktion inden for den INDEX-funktion om nødvendigt et eller andet sted.
Se på følgende billede. Denne gang har vi undersøgelsesprotokollen (kun Fysik ) af elever fra to forskellige klasser i Sunflower børnehave.
Nu har vi en celle H9 i det regneark, der indeholder VII .
Vi ønsker at udlede en formel, der viser den studerende med de højeste karakterer på VII. klasse i den tilstødende celle, hvis H9 indeholder VII .
Og hvis den indeholder VIII , vil formlen vise den studerende med de højeste karakterer fra 8. klasse .
⧪ Hvordan udføres dette?
Du kan indsætte en IF-funktion i en INDEX-funktion til at løse opgaven. Formlen vil være:
=INDEX(IF(H9="VII",B6:C15,E6:F15),IF(H9="VII",MATCH(MAX(C6:C15),C6:C15,1),MATCH(MAX(F6:F15),F6:F15,1)),1)
Se, da der er VII i celle H9 , vi får den studerende med de højeste karakterer fra VII. klasse .
Det er Steve Smith med karaktererne 98.
Og hvis vi går ind i VIII der, vil vi få den studerende med de højeste karakterer fra 8. klasse .
Det bliver Paul Kennington.
⧪ Forklaring af formlen:
- IF(H9=”VII”,B6:C15,E6:F15) returnerer B6:C15 hvis celle H9 indeholder "VII" Ellers returnerer den E6:F15.
- På samme måde, IF(H9="VII",MATCH(MAX(C6:C15),C6:C15,1),MATCH(MAX(F6:F15),F6:F15,1)) returnerer MATCH(MAX(C6:C15),C6:C15,1) hvis H9 indeholder "VII" Ellers returnerer den MATCH(MAX(F6:F15),F6:F15,1) .
- Derfor, når H9 indeholder "VII" , bliver formlen INDEX(B6:C15,MATCH(MAX(C6:C15),C6:C15,1),1),1) .
- MAX(C6:C15) returnerer de højeste karakterer fra området C6:C15 ( Marks på VII. klasse ). Det er 98 her. Se den MAX-funktion for nærmere oplysninger.
- Formlen bliver således INDEX(B6:C15,MATCH(98,C6:C15,1),1),1) .
- MATCH(98,C6:C15,1) søger efter et nøjagtigt match af 98 i kolonne C6:C15. Den finder en i den 8. række, i celle C13 Så den returnerer 8 .
- Formlen bliver nu INDEX(B6:C15,8,1) . Den returnerer værdien fra 8. række og 1. kolonne i datasættet B6:C15.
- Dette er den studerende med de højeste karakterer i VII. klasse , Steve Smith.
Lignende læsninger
- Excel INDEX- og MATCH-funktioner med flere kriterier (4 formler)
- INDEX-MATCH-formel til at finde minimumsværdi i Excel (4 egnede måder)
- INDEX, MATCH og MAX med flere kriterier i Excel
- XLOOKUP vs INDEX-MATCH i Excel (alle mulige sammenligninger)
- Indeks Match flere kriterier i rækker og kolonner i Excel
3. Brug IF-funktionen i MATCH-funktionen til at bruge IF med INDEX-MATCH i Excel
Du kan også bruge IF-funktion inden for den MATCH-funktion om nødvendigt.
Lad os gå tilbage til vores oprindelige datasæt, med den Marks på Fysik og Kemi af eleverne i Sunflower børnehave.
Nu skal vi udføre en anden opgave.
I celle F4 af regnearket, er der navnet på emnet "Fysik" .
Vi vil udlede en formel, der viser den studerende med de højeste karakterer i Fysik i den tilstødende celle hvis F4 indeholder "Physics".
Og hvis den har "Kemi" , vil den vise den studerende med de højeste karakterer i Kemi .
⧪ Hvordan udføres dette?
Let. Brug en IF-funktion inden for den MATCH-funktion , som denne formel:
=INDEX(B4:D13,MATCH(IF(F7="Fysik",MAX(C4:C13),MAX(D4:D13)),IF(F7="Fysik",C4:C13,D4:D13),0),1),1)
Den viser Steve Smith, fordi han er den højeste karakterer i Fysik , og cellen F7 indeholder "Fysik" .
Hvis vi ændrer celle F7 til "Kemi" , vil den vise Alfred Moyes, den højest placerede i Kemi .
⧪ Forklaring af formlen:
- IF(F7="Fysik",MAX(C4:C13),MAX(D4:D13)) returnerer MAX(C4:C13) hvis F7 indeholder "Fysik" Ellers returnerer den MAX(D4:D13) .
- På samme måde, IF(F7="Fysik",C4:C13,D4:D13) returnerer C4:C13 hvis F7 indeholder "Fysik" Ellers returnerer den D4:D13.
- Så hvis F7 indeholder "Fysik" , bliver formlen INDEX(B4:D13,MATCH(MAX(C4:C13),C4:C13,0),1) .
- MAX(C4:C13) returnerer de højeste karakterer fra intervallet C4:C13 ( Marks på Fysik ). Det er 98 her. Se den MAX-funktion for nærmere oplysninger.
- Formlen bliver således INDEX(B4:D13,MATCH(98,C4:C13,1),1),1) .
- MATCH(98,C4:C13,1) søger efter et nøjagtigt match af 98 i kolonne C4:C13. Den finder en i den 8. række, i celle C11 Så den returnerer 8 .
- Formlen bliver nu INDEX(B4:D13,8,1) . Den returnerer værdien fra 8. række og 1. kolonne i datasættet B4:D13.
- Dette er den studerende med de højeste karakterer i Fysik , Steve Smith.
Ting at huske
- Indstil altid den 3. argumentet i den MATCH-funktion til 0 hvis du ønsker et nøjagtigt match. Vi indstiller den næppe til noget andet.
- Der findes et par alternativer til den INDEX-MATCH-formel , som den FILTER-funktion , den VLOOKUP-funktion , den XLOOKUP-funktionen, osv.
- Blandt alternativerne er den FILTER-funktion er den bedste, da den returnerer alle de værdier, der matcher kriterierne. Men den er tilgængelig i Office 365 kun.
Konklusion
Ved hjælp af disse metoder kan du bruge IF-funktion med den INDEX-MATCH-funktionen i Excel. Kender du en anden metode, eller har vi spørgsmål, er du velkommen til at spørge os.