Com fer una cerca amb múltiples coincidències a Excel (amb passos fàcils)

  • Comparteix Això
Hugh West

Una de les funcions més sorprenents i utilitzades d'Excel és la funció BUSCAR V . Fins ara, hem après a treure una única coincidència d'una sèrie de cel·les mitjançant aquesta funció. Sovint podríeu trobar escenaris en què necessiteu obtenir tots els valors coincidents per a un identificador únic. En aquest article, demostrarem com podeu extreure diverses coincidències d'un rang de cel·les mitjançant la funció BUSCAR V a Excel.

Baixeu el quadern de pràctiques

Podeu descarregueu el següent quadern de treball d'Excel per entendre's i practicar millor.

Realització de Vlookup amb múltiples coincidències.xlsx

2 passos per a Vlookup amb múltiples coincidències a Excel

Aquí tenim els Registres de llibres de la llibreria Martin . Aquest conjunt de dades conté el Tipus de llibre , Nom del llibre i Autor d'alguns llibres a les columnes B , C , i D corresponentment.

Avui el nostre objectiu és treure totes les coincidències de cada tipus de llibre mitjançant la funció VLOOKUP . Ho farem en dos passos. Per tant, anem a explorar-los un per un.

Aquí hem utilitzat la versió Microsoft Excel 365 , podeu utilitzar qualsevol altra versió segons la vostra conveniència.

📌 Pas 01: Crea un nom únic per a cada valor de cerca

  • Al principi, inseriu una nova columna amb l'encapçalament Columna d'ajuda a l'esquerra a la columna de cerca Tipus de llibre i introduïu aquesta fórmula a la cel·la B5 .
=C5&COUNTIF(C5:$C$25,C5) Desglossament de la fórmula
  • COUNTIF(C5:$C$25,C5) retorna el nombre total de cel·les de l'interval C5:C25 ( Tipus de llibre ) que contenen el valor de la cel·la C5 ( Novel·la ). Consulteu la funció COUNTIF per obtenir més informació.
    • En paraules senzilles, quantes novel·les hi ha. És 7 .
  • C5&COUNTIF(C5:$C$25,C5) concatena el valor a cel·la C5 ( Novel·la ) amb ella.
    • Així que retorna Novel7 .

Quan arrossegueu l'eina Emplenar mànec , C5 augmenta un per un, com C5 , C6 , C7 ... però C25 roman constant. Per tant, per a cada Tipus de llibre , s'exclouen els anteriors i es genera un nom nou.

Per exemple, en el cas de les novel·les, Novel·la1 a <1 Es generen>Novel7 i similars per a Poesia i altres tipus de llibres.

  • A continuació, premeu ENTER .

  • Després, porteu el cursor a la dreta -canton inferior de la cel·la B5 i semblarà un signe més (+) . En realitat, és l'eina Emplenar el mànec .
  • Ara, feu-hi doble clic.

Copia aquesta fórmula. a la resta de cèl·lules. Trobareu tots els valors de cerca proporcionats amb un nom únic, com ara Novel·la1 , Novel·la2..., Poesia1 , Poesia2... ,etc.

📌 Pas 02: utilitzeu la funció VLOOKUP

  • En primer lloc, creeu una columna nova amb Capçalera de columna com a valor de cerca.

  • En segon lloc, inseriu la fórmula següent a la cel·la G5 , que és la primera cel·la d'aquesta columna.
=VLOOKUP(G$4&ROW($A$1:INDIRECT("A"&COUNTIF($C$5:$C$25,G$4))),$B$5:$E$25,3,FALSE) Desglossament de la fórmula
  • COUNTIF($C$5:$C $25,G$4) indica quantes cel·les de l'interval C5:C25 ( Tipus de llibre ) contenen el valor de la cel·la G4 ( Novel·la ).
    • En paraules senzilles, quantes novel·les hi ha en total. És 7 .

Hem utilitzat la referència de cel·la absoluta de l'interval C5:C25 ( $C $5:$C$25 ) perquè volem que no canviï si copiem la fórmula a qualsevol cel·la.

  • INDIRECT(“A”&COUNTIF($C$5: $C$25,G$4)) esdevé INDIRECT(“A”&7) i retorna la referència de cel·la A7 . Consulteu la funció INDIRECTA per obtenir més informació.
  • FILA($A$1:INDIRECT(“A”&COUNTIF($C$5:$C$25,G$4))) ara es converteix en ROW(A1:A7) . Vegeu la funció ROW per obtenir més informació.
    • Retorna una matriu de 1 a 7 com {1, 2, 3, 4, 5, 6, 7} .

Hem utilitzat $A$1 perquè no volem que canviï si copiem la fórmula a una altra cel·la.

  • G$4&ROW($A$1:INDIRECT(“A”&COUNTIF($C$5:$C$25,G$4)))) ara concatena el valor de la cel·la G4 ( Novel·la ) ambla matriu retornada per la funció ROW i retorna una altra matriu.
    • Per tant, retorna {Novel·la1, Novel·la2, …, Novel·la7} .
  • CERCA V (G$4 &ROW($A$1:INDIRECT(“A”&COUNTIF($C$5:$C$25,G$4))),$B$5:$E$25,3,FALSE) es converteix en CERCA V({Novel·la1, Novel·la2, …, Novel·la7},$B$5:$E$25,3,FALSE) .

Cerca cada valor de la matriu {Novel·la1 , Novel2, ... Novel7} a la columna de cerca B .

A continuació, retorna el nom corresponent de la novel·la des de la 3a columna (com la col_index_num és 3 ). Així, obtenim una llista de totes les novel·les.

  • Com de costum, premeu la tecla ENTER .

Nota: És una fórmula matricial. Així que no us oblideu de prémer Ctrl + Maj + Retorn tret que estigueu a Excel 365 .

I per als altres Tipus de llibres ,

  • Al principi, inseriu els seus noms l'un al costat de l'altre com a Capçaleres de columna i arrossegueu la Annexa d'emplenament .

Més informació: CERCA VINDIRECTA a Excel

Lectures similars

  • VLOOKUP no funciona (8 raons i solucions)
  • Excel LOOKUP vs VLOOKUP: amb 3 exemples
  • Per què retorna VLOOKUP #N/A Quan existeix la coincidència? (5 causes i solucions)
  • Utilitzeu VLOOKUP amb diversos criteris a Excel (6 mètodes + alternatives)
  • Excel VLOOKUP per trobar l'últim valor a la columna (ambAlternatives)

Formes alternatives de cercar V amb múltiples coincidències a Excel

Si el mètode anterior sembla perillós, no us preocupeu. Hi ha més opcions disponibles.

1. Ús de la funció FILTER

De fet, aquest és el mètode més senzill. Aquí, farem servir només la funció FILTRE . Seguiu aquests senzills passos.

📌 Passos:

  • Primer, anoteu el Tipus de llibre com a Capçalera de la columna i introduïu la fórmula següent a la cel·la F5 .
=FILTER($C$5:$C$25,$B$5:$B$25=F$4) Desglossament de la fórmula

Aquí,

  • $C$5:$C$25 ( Nom del llibre ) és la matriu_de_cerca . Busquem els noms dels llibres. Feu servir el vostre.
  • $B$5:$B$25 ( Tipus de llibre ) és el matching_array . Volem fer coincidir els tipus de llibres. Feu servir el vostre en conseqüència.
  • F4 ( Novel·la ) és el maching_value . Volem coincidir amb les novel·les. Ho feu servir en conseqüència.
  • A continuació, premeu ENTER .

Ara, si voleu el Noms de llibres de tots els Tipus de llibres ,

  • Inicialment, inseriu els seus noms com a Capçaleres de columna un al costat de l'altre i, a continuació, arrossegueu l'eina Omplir mànec .

2. Aplicació de la combinació d'INDEX, SMALL i ROWS Funcions (compatible amb versions anteriors d'Excel)

La funció FILTRE ésnomés disponible a Office 365 . Per tant, si utilitzeu la versió anterior d'Excel, no us preocupeu. Tenim una altra solució per a tu. És senzill i fàcil; només cal que seguiu.

📌 Passos:

  • Primalment, inseriu el Tipus de llibre com a Capçalera de la columna a la cel·la F4 i introduïu aquesta fórmula a la cel·la F5 .
=IFERROR(INDEX($C$5:$C$25,(SMALL(IF($B$5:$B$25=F4,ROW(B5:B25)-ROWS(B1:B4),""),(ROW(B5:B25)-ROWS(B1:B4))))),"") Desglossament de la fórmula
  • ROW(B5:B25) retorna una matriu de {5, 6, 7, …, 25} . I ROWS(B1:B4) retorna 4 . Així, ROW(B5:B25)-ROWS(B1:B4) retorna una matriu de {1, 2, 3, …, 21} . Consulteu la funció ROW i ROWS per obtenir més informació.
  • IF($B$5:$B$25=F4,ROW(B5:B25)-ROWS (B1:B4),””) retorna el número corresponent de la matriu {1, 2, 3, …, 21} el valor de la cel·la F4 ( Novel·la ) coincideix amb el valor de qualsevol cel·la de l'interval B5:B25 ( Tipus de llibre ). En cas contrari, retorna una cel·la en blanc. Consulteu la funció SI per obtenir més informació.

  • SMALL(IF($B$5:$B$25=F4 ,FILERA(B5:B25)-FILERES(B1:B4),””),(FILERA(B5:B25)-FILA(B1:B4))) esdevé PETIT({1, …, 3 , …, 6, …, 20, …},{1, 2, 3, 4, …., 21}) i retorna primer els números, després #NUM! errors en blanc cèl · lules. Consulteu la funció SMALL per obtenir més informació.

  • INDEX($C$5:$C$25,(SMALL( IF($B$5:$B$25=F4,FILERA(B5:B25)-FILERES(B1:B4),””),(FILERA(B5:B25)-FILA(B1:B4))))) esdevé INDEX($C$5:$C$25,{1,3,6,11,…,#NUM!}) i retorna els Noms de llibres corresponents (Nom de les novel·les) i errors #NUM! . Consulteu la funció INDEX per obtenir més informació.

  • Finalment, hem embolicat la fórmula dins d'una funció IFERROR per convertir els errors en cel·les en blanc.
  • Després, premeu ENTER .

  • Ara, si voleu , inseriu els altres Tipus de llibre com a Capçaleres de columnes i arrossegueu la Annexa d'emplenament . Obtindreu els llibres dels altres tipus de llibres.

3. Vlookup amb múltiples coincidències i resultats en fila

A l'anterior mètodes, hem obtingut els resultats en columnes verticals. Però si volem obtenir els valors seguits, com ho podem fer? Aquí, obtindrem els noms Autor per a diferents Tipus de llibre seguits. Només cal que seguiu amb cura els passos següents.

📌 Passos:

  • Al principi, aneu a la cel·la G5 i escriu la fórmula a continuació.
=IFERROR(INDEX($D$5:$D$19,SMALL(IF($F5=$B$5:$B$19,ROW($D$5:$D$19)-4,""),COLUMN()-6)),"")

Aquesta fórmula és una mica similar a la fórmula anterior. Per tant, si teniu cap problema per entendre aquesta fórmula, consulteu l' explicació anterior .

  • A continuació, toqueu la tecla ENTER .

Però hi ha altres autors que tenen novel·les en aquest conjunt de dades. Aleshores, com podem aconseguir-los?

Només arrossegueu la Annexa d'ompliment fins a la cel·la K5 per obtenir elaltres Autors de Novel·la . A més, arrossegueu l'eina Emplenar mànec a la cel·la K7 per obtenir els noms dels Autors per a diferents tipus de llibres. Vegeu la imatge següent per aclarir-vos.

Com cercar nombroses coincidències amb diversos criteris

En els nostres exemples anteriors, hem trobat els valors per a criteris únics. Per exemple, obtenim els títols de llibres per a un tipus de llibre concret. Però aquí, implicarem diversos criteris. Buscarem les Novel·les de Charles Dickens utilitzant aquest mètode. Vegem-ho en acció.

📌 Passos:

  • En primer lloc, seleccioneu la cel·la H5 i enganxeu la fórmula següent.
=IFERROR(INDEX($C$5:$C$25,SMALL(IF(1=((--($F$5=$B$5:$B$25))*(--($G$5=$D$5:$D$25))),ROW($C$5:$C$25)-4,""),ROW()-4)),"")
  • A continuació, premeu ENTER .

Com cercar i retornar diverses coincidències en una cel·la

En enfocaments anteriors, teníem els valors en diferents cel·les. Però mostrarem com podem obtenir resultats en una sola cel·la. Per tant, sense més demora, anem a capgirar-nos!

📌 Passos:

  • Primer, aneu a la cel·la G5 i introduïu la fórmula següent.
=TEXTJOIN(", ",TRUE,IF($F$5=$B$5:$B$25,C5:C25,""))

Aquí, la funció SI obté el valor de l'interval C5:C25 on els valors corresponents de l'interval B5:B25 coincideixen amb el valor de la cel·la F5 . A continuació, la funció TEXTJOIN combina els valors de la matriu amb una coma com a delimitador.

  • En segon lloc, premeu ENTER .

Més informació: FUNCIÓ INDEX MATCH vs VLOOKUP (9 exemples)

Conclusió

Aquest article explica com fer una cerca v amb múltiples coincidències a Excel d'una manera senzilla i concisa. No us oblideu de descarregar el fitxer de pràctiques. Gràcies per llegir aquest article. Esperem que això hagi estat útil. Feu-nos-ho saber a la secció de comentaris si teniu cap consulta o suggeriment. Visiteu el nostre lloc web, ExcelWIKI , un proveïdor únic de solucions d'Excel, per explorar-ne més.

Hugh West és un entrenador i analista d'Excel molt experimentat amb més de 10 anys d'experiència en el sector. És llicenciat en Comptabilitat i Finances i Màster en Administració i Direcció d'Empreses. Hugh té una passió per l'ensenyament i ha desenvolupat un enfocament pedagògic únic que és fàcil de seguir i entendre. El seu coneixement expert d'Excel ha ajudat a milers d'estudiants i professionals de tot el món a millorar les seves habilitats i a destacar en les seves carreres. A través del seu bloc, Hugh comparteix els seus coneixements amb el món, oferint tutorials d'Excel gratuïts i formació en línia per ajudar les persones i les empreses a assolir tot el seu potencial.