Táboa de contidos
Hai varias formas de aplicar VLOOKUP ou a busca vertical en Microsoft Excel para devolver datos baseados en varias coincidencias. Neste artigo, coñecerás todos os métodos posibles para activar BUSCAR V e extraer todos os datos dispoñibles coas ilustracións adecuadas.
Descargar o libro de prácticas
Podes descargar o libro de Excel que usamos para preparar este artigo.
BUSCAR V e devolver todas as coincidencias.xlsx
7 Formas de BUSCAR V e devolver todas as coincidencias en Excel
A función BUSCARV busca un valor na columna máis á esquerda dunha táboa e devolve un valor na mesma fila desde a columna especificada . Pero esta función non pode extraer datos baseados en máis dunha coincidencia dunha columna. Polo tanto, temos que inserir algunhas outras funcións e fórmulas para buscar un valor e devolver todas as coincidencias atopadas nunha columna.
1. BUSCAR V e devolver coincidencias múltiples nunha columna
Na seguinte imaxe, temos unha táboa que contén nomes aleatorios de varios empregados e dos seus departamentos. Asumindo que queremos mostrar os nomes dos empregados nunha soa columna que traballan no departamento de Fabricación.
Se es Excel 365 usuario, entón podes buscar a función FILTRO aquí para atopar os valores de retorno nun momento. Coa función FILTRO , a fórmula requirida na saída Cela C16 ser:
=FILTER(C5:C13,C15=B5:B13)
Despois de premer Intro , verás os nomes dos empregados da Fabricación departamento nunha matriz vertical.
Ou se estás a usar unha versión anterior de Microsoft Excel, tes que usar a seguinte fórmula combinada :
=INDEX($C$5:$C$13, SMALL(IF(($C$15=$B$5:$B$13), MATCH(ROW($B$5:$B$13), ROW($B$5:$B$13)), ""),ROWS($A$1:A1)))
Despois de premer Intro , atoparás o nome do empregado na saída Cela C16 .
Ao usar Recheo de control desde a Cela C16 cara abaixo, obterá o resto dos nomes do empregados do departamento especificado á vez.
🔎 Como funciona esta fórmula?
- ROW($B$5:$B$13): A función ROW extrae os números de fila das referencias de cela definidas e devolve a seguinte matriz:
{5;6;7;8;9;10;11;12;13}
- COINCIDIR(FILA($B$5:$B$13) , ROW($B$5:$B$13)): MATCH converte aquí os números de fila extraídos a partir de 1. Así, esta parte da fórmula devolve unha matriz de:
{1;2;3;4;5;6;7;8;9}
- SE(($C$15=$B $5:$B$13), MATCH(ROW($B$5:$B$13), ROW($B$5:$B$13)), “”): Coa axuda de IF función, esta parte da fórmula devolve o número de índice das filas que cumpren a condición especificada. Entón, esta parte devolve unha matriz de:
{“”;2;””;4;””;””;””;””;9}
- A función PEQUENO da fórmula saca o primeiro pequenonúmero atopado no paso anterior e asigna este número ao segundo argumento (número_fila) da función INDEX .
- Finalmente, o INDEX a función mostra o nome do empregado en función do número de fila especificado.
- A función ROWS nesta fórmula define o número k-th para o PEQUENO función. Mentres se usa Recheo de control para encher o resto das celas, a fórmula usa este k-th número para extraer datos seguido da función PEQUENO .
Ler máis: FUNCIÓN INDEX MATCH vs VLOOKUP (9 exemplos)
2. BUSCAR V e devolver todas as coincidencias seguidas en Excel
Se queres ver os nomes dos empregados horizontalmente, tes que combinar a función FILTRO coa TRANSPOSICIÓN función. A función TRANSPOSE converte un intervalo vertical de celas nun intervalo horizontal ou viceversa. E para usar esta fórmula combinada, debes ser usuario de Excel 365 .
Entón, a fórmula necesaria na saída Cela C16 será:
=TRANSPOSE(FILTER(C5:C13,C15=B5:B13))
Agora preme Intro e amosaranse os nomes dos empregados do departamento de Fabricación nunha matriz horizontal.
Ou insira a seguinte fórmula na saída Cela C16 se non es un usuario de Excel 365.
=INDEX($C$5:$C$13, SMALL(IF($C$15=$B$5:$B$13, ROW($B$5:$B$13)-MIN(ROW($B$5:$B$13))+1, ""), COLUMNS($A$1:A1)))
Preme Intro e atoparás o nome do empregado dodepartamento.
Agora, usa Recheo de control e arrastra a Cela C16 cara á dereita ata atopar o primeiro #NUM erro. E obterás todos os nomes do departamento de Fabricación horizontalmente.
A fórmula inserida aquí é case semellante á primeira fórmula longa utilizada no exemplo anterior do artigo onde os datos extraídos tiñan que mostrarse verticalmente. A única diferenza importante é que estamos a usar aquí a función COLUMNS para especificar o número de secuencia da función SMALL . Mentres enche automaticamente as celas horizontalmente, a fórmula seguirá o número de secuencia da función SMALL para extraer datos.
Ler máis: Excel VLOOKUP para Devolver varios valores verticalmente
3. BUSCAR V para devolver varios valores en función de criterios
Engadimos unha columna adicional no medio da táboa. Esta columna almacena os ID do proxecto que se asignan aos empregados correspondentes presentes na Columna D . Polo tanto, agora introduciremos dúas condicións diferentes e extraeremos datos en función de todas as coincidencias atopadas.
Por exemplo, queremos saber os nomes dos empregados que traballan actualmente no Vendas . departamento sobre o ID do proxecto DMR 103 .
A fórmula necesaria na saída Cela C17 será:
=IFERROR(INDEX($D$5:$D$13, SMALL(IF(1=((--($C$15=$B$5:$B$13)) * (--($C$16=$C$5:$C$13))), ROW($D$5:$D$13)-4,""), ROW()-16)),"")
Preme Intro e atoparás o nome do empregadobaixo os criterios especificados.
Agora enche a Cela C17 para mostrar o resto do nome coas condicións indicadas.
🚩 Algunhas características importantes desta fórmula:
- Esta fórmula tamén é bastante similar á utilizada no método anterior.
- Nesta fórmula, utilizouse a función IFERROR para mostrar unha saída personalizada se se atopa algún erro.
- O IF A función nesta fórmula combina dous criterios diferentes e coa axuda do dobre unario, os valores booleanos (VERDADEIRO ou FALSO) convértense en 1 ou 0 . A función devolve entón o número de índice das filas que coincidiron cos criterios indicados.
- ROW($D$5:$D$13)-4: Nesta parte, o número '4' é o número de fila da cabeceira Empregado.
- ROW()-16: E o valor numérico '16' usado en esta parte indica o número de fila anterior da primeira cela de saída.
Ler máis: Use VLOOKUP con varios criterios en Excel (6 métodos + alternativas)
4. BUSCAR V e extraer todas as coincidencias co filtro automático
Ao usar Filtro automático , podemos extraer datos baseados en todas as coincidencias con máis facilidade. Dado que imos sacar os nomes dos empregados do departamento de Fabricación, temos que seguir os seguintes pasos:
📌 Paso 1:
➤ Seleccione toda a táboa de datos e prema co botón dereito do ratorato.
➤ Escolla a opción "Filtrar polo valor da cela seleccionada" das opcións Filtrar .
Entón, acaba de activar o Botóns de filtro para os seus encabezados.
📌 Paso 2:
➤ Fai clic no botón Filtrar da cabeceira Departamento .
➤ Pon unha marca só na opción Fabricación .
➤ Prema Aceptar e xa está.
Como na captura de pantalla que aparece a continuación, amosaranse os datos filtrados e resultantes.
Ler máis: VLOOKUP con varias coincidencias en Excel
Lecturas similares
- Como aplicar VLOOKUP dobre en Excel (4 xeitos rápidos)
- VLOOKUP non funciona (8 razóns e solucións)
- Como combinar Excel SUMIF & VLOOKUP en varias follas
- VLOOKUP para devolver varias columnas en Excel (4 exemplos)
- Como realizar VLOOKUP con varias condicións en Excel (2 métodos) )
5. VLOOKUP para extraer todas as coincidencias con filtro avanzado en Excel
Tamén podes usar o Filtro avanzado onde tes que definir os criterios seleccionando o intervalo de criterios da túa folla de cálculo de Excel. Na seguinte imaxe, B15:B16 é o intervalo de criterios.
📌 Paso 1:
➤ Seleccione o táboa de datos enteira.
➤ Baixo a cinta Datos , faga clic no comando Avanzado da Ordenar e filtrar menú despregable.
Abrirase un cadro de diálogo chamado Filtro avanzado .
📌 Paso 2:
➤ Seleccione toda a táboa de datos para a entrada Intervalo de lista .
➤ Escolla B15:B16 para o entrada do Intervalo de criterios .
➤ Prema Aceptar .
E amosarase o resultado filtrado cos nomes dos empregados só do departamento de Fabricación .
Ler máis: BUSCAR V con múltiples Criterios en Excel (6 exemplos)
6. BUSCAR V e devolver todos os valores formateando como táboa
Agora mostrarémosche outro método sinxelo para filtrar a táboa de datos converténdoa nunha táboa con formato.
📌 Paso 1:
➤ Seleccione primeiro a táboa de datos primarios.
➤ No menú despregable Formatar como táboa baixo o Pestaña Inicio, escolla calquera das táboas que prefira.
Despois do primeiro paso, a súa táboa de datos agora terá o aspecto que se mostra na seguinte captura de pantalla con as cabeceiras filtradas.
📌 Paso 2:
➤ Seleccione Fabricación opción despois de facer clic no botón de filtro da cabeceira Departamento .
➤ Prema Aceptar e xa está.
A seguinte captura de pantalla mostra as saídas baseadas na selección especificada.
Ler máis: Uso de VBA VLOOKUP para Atopar valores doutra folla de traballo en Excel
7.BUSCAR V para extraer todas as coincidencias nunha única cela en Excel
A función TEXTJOIN concatena unha lista ou intervalo de cadeas de texto mediante un delimitador. Ao incorporar as funcións TEXTJOIN e IF xuntos, podemos buscar un valor e extraer datos baseados en todas as coincidencias nunha única cela.
A fórmula necesaria na saída A cela C16 será:
=TEXTJOIN(", ",TRUE,IF($B$5:$B$13=$C$15,$C$5:$C$13,""))
Despois de premer Intro , atoparás os nomes dos empregados do Fabricar departamento nunha única cela separada por comas.
Nesta fórmula, a función IF devolve a matriz cos nomes coincidentes así como o valor booleano "FALSO" para as celas non coincidentes. Despois, a función TEXTJOIN une todos os nomes atopados co delimitador especificado.
Ler máis: BUSCAR V Texto parcial dunha única cela en Excel
Palabras de conclusión
Espero que todos estes métodos mencionados anteriormente che axuden agora a aplicalos nas túas follas de cálculo de Excel cando sexa necesario. Se tes algunha dúbida ou comentario, fágamelo saber na sección de comentarios. Ou pode consultar os nosos outros artigos relacionados coas funcións de Excel neste sitio web.