Căutați o potrivire parțială a textului în Excel (5 metode)

  • Imparte Asta
Hugh West

În Microsoft Excel, există mai multe metode utile pentru a căuta corespondențe parțiale de text și apoi pentru a extrage date pe baza acelei corespondențe specifice. În acest articol, veți învăța toate metodele adecvate pentru a căuta corespondențe parțiale de text în Excel cu încorporarea diferitelor funcții și formule de căutare.

Descărcați caietul de practică

Puteți descărca registrul de lucru Excel pe care l-am folosit pentru a pregăti acest articol.

Căutarea textului parțial de potrivire.xlsx

5 Metode adecvate pentru a căuta potrivirea parțială a textului în Excel

1. Potrivirea parțială a textului cu VLOOKUP în Excel

În imaginea de mai jos, există un tabel care conține notele la diferite materii pentru unii studenți la un examen. Acum, pe baza potrivirii parțiale a unui text din Coloana B , vom extrage notele la o materie pentru un elev.

De exemplu, putem căuta textul "Tick" în coloana de Nume Pe baza potrivirii parțiale, vom afla numele real al elevului respectiv și apoi vom extrage din tabel notele la matematică ale elevului corespunzător.

În acest exemplu, vom folosi VLOOKUP deoarece această funcție caută o valoare în cea mai din stânga coloană a unui tabel și apoi returnează valoarea din același rând din coloana specificată. Formula generică a acestei funcții VLOOKUP este:

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

Deoarece vom extrage notele la matematică ale unui elev al cărui nume conține textul "Tick" , astfel încât formula necesară în ieșire Celula D17 va fi:

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

Sau,

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

După ce ați apăsat Introduceți , ți se vor afișa imediat notele la matematică pentru Tickner.

Citește mai mult: Cum să utilizați VLOOKUP pentru potrivire parțială în Excel (4 moduri)

2. Căutarea corespondenței parțiale a textului cu ajutorul funcțiilor INDEX-MATCH

Acum vom folosi combinația de INDEX și MATCH Funcția INDEX returnează o valoare sau o referință a celulei de la intersecția dintre un anumit rând și o anumită coloană dintr-un anumit interval, iar funcția MATCH returnează poziția relativă a unui element dintr-un tablou care corespunde unei valori specificate într-o anumită ordine.

Vom găsi o ieșire similară cu cea găsită în metoda anterioară. Așadar, în această secțiune, formula cerută în ieșire Celula D18 va fi:

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

Sau,

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

Acum apăsați Introduceți iar formula va returna 91- nota pe care Tickner a obținut-o la matematică.

În această formulă, cele două MATCH definesc numerele de rând și de coloană ale numelui elevului și, respectiv, ale subiectului. INDEX returnează apoi valoarea aflată la intersecția numerelor de rând și de coloană definite din matrice.

Citește mai mult: Cum se utilizează INDEX și Match pentru potrivire parțială (2 moduri)

3. XLOOKUP cu caracter wildcard pentru a căuta o potrivire parțială a textului

The XLOOKUP caută un interval sau un tablou pentru o potrivire și returnează elementul corespunzător dintr-un al doilea interval sau tablou. Formula generică a acestei funcții este:

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

Acum vom folosi acest XLOOKUP direct pentru a extrage notele la matematică ale elevului al cărui nume conține textul "Tick" înăuntru.

În ieșire Celula D18 , formula necesară va fi:

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

După ce ați apăsat Introduceți , vi se va afișa un rezultat similar cu cel din cele două exemple anterioare.

În această funcție, am folosit 2 ca argument [match_mode] care denotă potrivirea caracterelor wildcard. Dacă nu folosiți acest argument, funcția va returna #N/A deoarece, în mod implicit, funcția va căuta o potrivire exactă în loc de o potrivire cu caractere wildcard.

4. Combinarea funcțiilor XLOOKUP, ISNUMBER și SEARCH pentru căutarea unei corespondențe parțiale de text

Dacă optați să evitați utilizarea caracterelor wildcard în funcția de căutare, atunci trebuie să aplicați formula combinată de XLOOKUP, ISNUMBER și SEARCH funcții.

The ISNUMBER verifică dacă valoarea unei celule este o valoare numerică sau nu. Funcția CĂUTARE returnează numărul caracterului la care se găsește pentru prima dată un anumit caracter sau un șir de text, citind de la stânga la dreapta. Formulele generice ale acestor două funcții sunt următoarele:

=ISNUMBER(valoare)

Și

=SEARCH(find_text, within_text, [search_num])

Deci, formula necesară în ieșire Celula D18 va fi:

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

După ce apăsați Introduceți , valoarea rezultată va fi afișată imediat.

🔎 Cum funcționează formula?

  • The CĂUTARE caută textul "Tick în intervalul de celule B5:B14 și returnează o matrice de:

{#VALOARE!;#VALOARE!;1;#VALOARE!;#VALOARE!;#VALOARE!;#VALOARE!;#VALOARE!;#VALOARE!;#VALOARE!;#VALOARE!;#VALOARE!}

  • The ISNUMBER caută apoi valoarea numerică din acel tablou și returnează un alt tablou de valori booleene:

{FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}

  • The XLOOKUP caută apoi valoarea booleană specificată- ADEVĂRAT din matricea găsită în etapa anterioară și extrage numărul de rând al acelei valori din matricea de B5:B14 .
  • În cele din urmă, pe baza matricei de returnare a F5:F14 , a XLOOKUP funcția extrage notele la matematică ale elevului al cărui nume conține textul- "Tick înăuntru.

5. Utilizarea funcțiilor FILTER, ISNUMBER și SEARCH pentru căutarea unei corespondențe parțiale de text

În ultima metodă, vom folosi combinația de FILTRARE, ISNUMBER și CĂUTARE funcții. FILTRU filtrează aici un interval de celule sau o matrice pe baza condițiilor date. Formula generică a acestei funcții este:

=FILTER(array, include, [if_empty])

Având în vedere că avem de-a face cu un set de date similar, deci formula necesară cu FILTRU în ieșire Celula D18 va fi:

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

Acum apăsați Introduceți și veți obține instantaneu valoarea rezultată.

În această formulă, se utilizează FILTRU funcția filtrează intervalul de celule- F5:F14 pe baza valorii booleene. ADEVĂRAT numai. combinația de ISNUMBER și CĂUTARE returnează matricea de valori booleene- ADEVĂRAT și FALSE și definește al doilea argument (include) a FILTRU funcție.

Cuvinte de încheiere

Sper că toate metodele menționate mai sus vă vor ajuta acum să extrageți date pe baza potrivirii parțiale a textului din foile de calcul Excel. Dacă aveți întrebări sau feedback, vă rog să mă anunțați în secțiunea de comentarii. Sau puteți consulta celelalte articole legate de funcțiile Excel de pe acest site.

Hugh West este un trainer și analist Excel cu o experiență de peste 10 ani în industrie. Deține o diplomă de licență în contabilitate și finanțe și un master în administrarea afacerilor. Hugh are o pasiune pentru predare și a dezvoltat o abordare unică de predare care este ușor de urmărit și de înțeles. Cunoștințele sale experte despre Excel au ajutat mii de studenți și profesioniști din întreaga lume să-și îmbunătățească abilitățile și să exceleze în cariera lor. Prin blogul său, Hugh își împărtășește cunoștințele lumii, oferind tutoriale gratuite Excel și instruire online pentru a ajuta persoanele și companiile să-și atingă întregul potențial.