Opslag Delvis tekstmatch i Excel (5 metoder)

  • Del Dette
Hugh West

I Microsoft Excel er der flere nyttige metoder til at slå op på delvise tekstoverensstemmelser og derefter udtrække data baseret på den specifikke overensstemmelse. I denne artikel lærer du alle de egnede metoder til at slå op på delvise tekstoverensstemmelser i Excel med inddragelse af forskellige opslagsfunktioner og formler.

Download arbejdsbog til øvelser

Du kan downloade den Excel-arbejdsmappe, som vi har brugt til at forberede denne artikel.

Opslag Delvis tekstoverensstemmelse.xlsx

5 egnede metoder til at slå op på partiel tekstmatch i Excel

1. Delvis tekstmatch med VLOOKUP i Excel

På det følgende billede er der en tabel med karakterer i forskellige fag for nogle elever ved en eksamen. På baggrund af det delvise match af en tekst fra Kolonne B , uddrager vi karaktererne i et fag for en elev.

Vi kan f.eks. søge efter teksten "Tick" i kolonnen i Navn Baseret på det delvise match finder vi ud af det faktiske navn på den pågældende elev og uddrager derefter karaktererne i matematik for den tilsvarende elev fra tabellen.

I dette eksempel bruger vi VLOOKUP funktionen her, da denne funktion søger efter en værdi i den venstre kolonne i en tabel og derefter returnerer værdien i samme række fra den angivne kolonne. Den generiske formel for denne VLOOKUP-funktion er:

=VLOOKUP(lookup_value, table_array, col_index_number, [range_lookup])

Da vi skal trække karaktererne i matematik ud for en elev, hvis navn indeholder teksten "Tick" , så den nødvendige formel i output Celle D17 vil være:

=VLOOKUP(D16,B5:G14,5,FALSE)

Eller,

=VLOOKUP("*Tick*",B5:G14,5,FALSE)

Når du har trykket på Gå ind på , får du vist karaktererne i matematik for Tickner med det samme.

Læs mere: Sådan bruges VLOOKUP til partiel match i Excel (4 måder)

2. Opslag af delvist tekstmatch med INDEX-MATCH-funktioner

Nu vil vi bruge kombinationen af INDEX og MATCH INDEX-funktionen returnerer en værdi eller reference til cellen i skæringspunktet mellem en bestemt række og kolonne i et givet interval, og MATCH-funktionen returnerer den relative position af et element i et array, der passer til en bestemt værdi i en bestemt rækkefølge.

Vi vil finde et lignende output som i den foregående metode. Så i dette afsnit vil den nødvendige formel i output Celle D18 vil være:

=INDEX(B5:G14,MATCH(D17,B5:B14,0),MATCH(D17,B4:G4,0))

Eller,

=INDEX(B5:G14,MATCH("*Tick*",B5:B14,0),MATCH(D17,B4:G4,0))

Tryk nu på Indtast og formlen vil give 91 - de karakterer, som Tickner har opnået i matematik.

I denne formel er de to MATCH funktionerne definerer række- og kolonnumrene for henholdsvis elevens navn og faget. INDEX funktionen returnerer derefter værdien i skæringspunktet mellem de definerede række- og kolonnetal fra arrayet.

Læs mere: Sådan bruger du INDEX og Match til delvis match (2 måder)

3. XLOOKUP med jokertegn til at slå op på partiel tekstoverensstemmelse

XLOOKUP funktionen søger i et område eller et array efter et match og returnerer det tilsvarende element fra et andet område eller array. Den generiske formel for denne funktion er:

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])

Nu bruger vi denne XLOOKUP funktionen direkte for at udtrække karaktererne i matematik for den elev, hvis navn indeholder teksten "Tick" inde.

I output Celle D18 vil den nødvendige formel være:

=XLOOKUP("*"&D16&"*",B5:B14,F5:F14,,2)

Når du har trykket på Indtast , får du et output, der ligner det, der blev vist i de to foregående eksempler.

I denne funktion har vi brugt 2 som [match_mode]-argumentet, der angiver wildcard-tegnsoverensstemmelse. Hvis du ikke bruger dette argument, returnerer funktionen #N/A fejl, da funktionen som standard vil søge efter det nøjagtige match i stedet for wildcard-tegnsmatch.

4. Kombination af XLOOKUP-, ISNUMBER- og SEARCH-funktioner til at søge efter partiel tekstoverensstemmelse

Hvis du vælger at undgå brugen af jokertegn i opslagsfunktionen, skal du anvende den kombinerede formel XLOOKUP, ISNUMBER og SEARCH funktioner.

ISNUMBER funktionen kontrollerer, om en celleværdi er en numerisk værdi eller ej. Funktionen SØG funktionen returnerer nummeret på det tegn, hvor et bestemt tegn eller en tekststreng først findes, fra venstre mod højre. De generiske formler for disse to funktioner er som følger:

=ISNUMBER(værdi)

Og

=SEARCH(find_text, within_text, [search_num])

Så den krævede formel i output Celle D18 vil være:

=XLOOKUP(TRUE,ISNUMBER(SEARCH(D16,B5:B14)),F5:F14)

Når du har trykket på Indtast , vises den resulterende værdi med det samme.

🔎 Hvordan virker formlen?

  • SØG funktionen leder efter teksten 'Tick' i området af celle B5:B14 og returnerer et array af:

{#VALUE!;#VALUE!;1;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}

  • ISNUMBER funktionen søger derefter efter den numeriske værdi i dette array og returnerer et andet array af boolske værdier:

{FALSK;FALSK;SAND;SAND;FALSK;FALSK;FALSK;FALSK;FALSK;FALSK;FALSK;FALSK;FALSK;FALSK;FALSK}

  • XLOOKUP funktionen leder derefter efter den angivne boolske værdi - TRUE i det array, der blev fundet i det foregående trin, og udtrækker række nummeret for denne værdi i arrayet af B5:B14 .
  • Endelig, baseret på det returnerede array af F5:F14 , den XLOOKUP funktionen udtrækker karaktererne i matematik for den elev, hvis navn indeholder teksten- 'Tick' inde.

5. Brug af FILTER-, ISNUMBER- og SØG-funktioner til at søge efter partielle tekstoverensstemmelser

I den sidste metode bruger vi kombinationen af FILTER, ISNUMBER og SØGNING funktioner. FILTER funktionen filtrerer her en række celler eller et array på baggrund af de givne betingelser. Den generiske formel for denne funktion er:

=FILTER(array, include, [if_empty])

Da vi har at gøre med et lignende datasæt, så den nødvendige formel med FILTER funktion i output Celle D18 vil være:

=FILTER(F5:F14,ISNUMBER(SEARCH(D16,B5:B14)))

Tryk nu på Indtast og du får den resulterende værdi med det samme.

I denne formel er FILTER funktionen filtrerer området af celler- F5:F14 baseret på den boolske værdi- TRUE kun. Kombinationen af ISNUMBER og SØG funktioner returnerer arrayet af boolske værdier- TRUE og FALSK og definerer det andet argument (omfatter) af den FILTER funktion.

Afsluttende ord

Jeg håber, at alle de ovennævnte metoder nu vil hjælpe dig med at udtrække data baseret på de delvise tekstmatches i dine Excel-regneark. Hvis du har spørgsmål eller feedback, så lad mig vide det i kommentarfeltet. Eller du kan tjekke vores andre artikler relateret til Excel-funktioner på dette websted.

Hugh West er en meget erfaren Excel-træner og analytiker med over 10 års erfaring i branchen. Han har en bachelorgrad i regnskab og finans og en kandidatgrad i Business Administration. Hugh har en passion for undervisning og har udviklet en unik undervisningstilgang, der er nem at følge og forstå. Hans ekspertviden om Excel har hjulpet tusindvis af studerende og fagfolk verden over med at forbedre deres færdigheder og udmærke sig i deres karriere. Gennem sin blog deler Hugh sin viden med verden og tilbyder gratis Excel-tutorials og onlinetræning for at hjælpe enkeltpersoner og virksomheder med at nå deres fulde potentiale.