Excel MATCH -funktion - Søg efter en værdis position på en liste

Download eksempel på projektmappe

Download eksemplet på projektmappe

Denne Excel -tutorial viser, hvordan du bruger Excel MATCH -funktion i Excel for at finde en værdi med formeleksempler.

MATCH Funktionsoversigt

MATCH -funktionen søger efter et element på en liste og returnerer et tal, der repræsenterer dets position på listen.

(Bemærk hvordan formelindgangen vises)

Match funktion syntaks og argument

1 = MATCH (opslagsværdi, opslag_array, matchtype)

opslagsværdi - Den værdi, du vil søge efter.

opslag_array - En matrix af data, enten en kolonne bred eller en række høj, som du vil søge i.

match_type - 0, -1 eller 1 angiver, hvad der skal gøres, hvis der ikke findes et eksakt match. 0 returnerer en fejl. -1 returnerer det nærmeste match, der er større end opslagsværdien. 1 returnerer det nærmeste match, der er mindre end opslagsværdien.

Hvad er MATCH -funktionen?

Enkelt sagt kan MATCH -funktionen søge i et område/array af elementer og returnere den søgte ords relative position. Det bruges ofte sammen med INDEX -funktionen, da INDEX har brug for en relativ position for at returnere et resultat.

Præcis match

Du støder ofte på store lister med data, og du skal kunne søge efter et bestemt element. Vi vil bruge et lille eksempel med lidt frugt. Først leder vi efter et præcist match. Her er layoutet af vores data. Vi vil søge efter ordet i celle D1.

I D2 er vores formel:

1 = MATCH (D1, A2: A5, 0)

Bemærk, at vi skulle angive enten 0 eller Falsk som det sidste argument for at angive, at vi ønsker en eksakt match. Resultatet fra denne funktion er 2, fordi "Apple" er 2nd vare i vores sortiment.

Sorteret liste

Lad os se, hvordan MATCH-funktionen fungerer med et ikke-eksakt match. Her har vi en liste over varer. BEMÆRK: Varerne er sorteret i stigende rækkefølge.

I D1 har vi sagt, at vi vil lede efter ordet "Orange". Formlen i D2 er

1 = MATCH (D1, A2: A5, 1)

Vores formel giver et resultat på 2, selvom "Orange Juice" er i 3rd celle. Fordi vi søgte efter en tættest match, finder funktionen enten vores nøjagtige ord, eller den næstmindste vare. Med tekststrenge er dette tilfældigvis ordet lige før “Orange Juice”, og så fik vi et resultat på 2.

Denne evne til at finde den næst mindste kan være lettere at forstå ved hjælp af en nummersøgning. Overvej dette layout, hvor vi kun har angivet varer med 10. Hvis vi søger efter en værdi på 34 ved hjælp af vores formel, kan du se, at resultatet er 3.

1 = MATCH (D1, A2: A5, 1)

Dette kan fungere godt, når du har at gøre med "spande", og du vil bare være i stand til at finde ud af, hvilken gruppe en værdi hører til.

Nedadgående liste

I vores tidligere eksempel, hvad hvis du ville have værdien af ​​34 placeret i den større gruppe? I vores næste eksempel, lad os sige, at vi har en liste over forskellige containerforsendelsescontainere, og vi skal vide, hvilken vi skal bruge. Da vi skal sikre os, at vi har nok plads eller mere, bruger vi funktionen MATCH med det sidste argument sat til -1. Lad os se på dette eksempel:

I dette tilfælde skal vi finde ud af, hvilken beholder der passer til vores størrelse 495. Formlen i D2 er:

1 = MATCH (D1, A1: A5, -1)

Resultatet af denne formel er 2, hvilket indikerer, at vi skal bruge 2nd element fra listen (500), så det passer til vores behov.

Wildcard -match

MATCH -funktionen understøtter også brugen af ​​jokertegn som “*” og “?”. Lad os gå tilbage til vores liste over forskellige madvarer. I dette tilfælde har vi ændret vores søgeudtryk i D1 til at være "Orange*".

Vores formel i D2 er:

1 = MATCH (D1, A1: A5, 0)

Bemærk, at vi skal skifte MATCH -typen tilbage til eksakt match. Selvom emnerne er blandet sammen, og vores søgeudtryk ikke matchede hele teksten, kunne vores formel give det korrekte resultat på 3.

Brug af MATCH med INDEX

At returnere den relative position for et element er rart, men det er normalt ikke så nyttigt for menneskelige brugere. Vi vil normalt gerne vide den tilsvarende værdi for en vare. Det er her INDEX kan komme ind på scenen. Da INDEX har brug for en numerisk position for række og/eller kolonne, kan vi bruge MATCH -funktionen til at fortælle INDEX, hvilket element vi ønsker. Overvej følgende layout, hvor vi skal være i stand til at slå priser op for vores varer.

Vi leder efter "Apple". I E2 er vores formel

1 = INDEX (A2: A5, MATCH (E1, B2: B5, 0))

MATCH -funktionen vil søge B2: B5 efter vores nøjagtige sætning, "Apple". Det vil finde dette i 2nd element og returnere værdien af ​​2. INDEX tager derefter dette og giver os 2nd værdi fra A2: A5 -området. Den 2nd varen er i celle A3, $ 2,00. Dette diskuteres mere i

Match i Google Sheets

MATCH -funktionen fungerer nøjagtig det samme i Google Sheets som i Excel:
<

Ekstra Noter

Brug MATCH -funktionen til at finde den numeriske position af en værdi inden for et værdiområde. Området skal enten være en delmængde af et enkelt område eller en enkelt række.

MATCH -funktionen bruges oftest sammen med INDEX -funktionen.

MATCH Eksempler i VBA

Du kan også bruge MATCH -funktionen i VBA. Type:

1 application.worksheetfunction.match (opslag_værdi, opslag_array, match_type)

For funktionsargumenterne (opslagsværdi osv.) Kan du enten indtaste dem direkte i funktionen eller definere variabler, der skal bruges i stedet.

Forudsat at vi har følgende værdier i vores Excel -ark

udfører følgende kode

123 Dim Match_Value som variantMatch_Value = Application.WorksheetFunction.Match ("test1", område ("A4: A13"), 1)MsgBox ("Match blev fundet i række" & Max_Value)

Vil returnere følgende

1 Match blev fundet i række 9

fordi strengen "test1" er det niende element i værdiområdet, der skal søges efter.

Vi kan også søge efter indhold i vores regneark i stedet for direkte at indtaste værdier i VBA -koden: Følgende sætning søger i kolonne A efter den værdi, der er angivet i celle C3

1 Match_Value = Application.Match (Celler (3, 3). Værdi, kolonner (1), 0)

Tilbage til listen over alle funktioner i Excel

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave