Skip to main content

¿Cómo hacer una búsqueda vertical y concatenar múltiples valores correspondientes en Excel?

Author: Xiaoyang Last Modified: 2025-08-06

Cuando se utiliza VLOOKUP en Excel, la función normalmente devolverá solo el primer valor coincidente que encuentre para un criterio de búsqueda dado. Sin embargo, existen muchos escenarios comunes donde puede ser necesario recuperar y combinar todos los valores coincidentes asociados con una clave particular, como listar a todos los estudiantes en una clase o todos los productos asociados con una categoría específica. Dado que la función VLOOKUP estándar es limitada en este aspecto, podrías preguntarte cómo lograr la capacidad de buscar y concatenar múltiples resultados correspondientes en una sola celda. A continuación, exploraremos varios métodos prácticos y eficientes para realizar esta tarea, adecuados para diferentes versiones de Excel y preferencias del usuario.


Búsqueda vertical y concatenación de múltiples valores correspondientes con las funciones TEXTJOIN y FILTER

Si estás utilizando Excel 365 o Excel 2021, la combinación de las funciones TEXTJOIN y FILTER ofrece un enfoque eficiente basado en fórmulas para buscar y concatenar todos los valores coincidentes. Esta solución es especialmente adecuada para conjuntos de datos dinámicos y actualizados, ya que actualizará automáticamente el resultado cuando cambien los datos de origen. Es mejor aplicarla si tu versión de Excel soporta la función FILTER, que es exclusiva de las versiones más recientes de Office.

En la celda objetivo, introduce la siguiente fórmula, luego arrastra la fórmula hacia abajo si deseas aplicarla a otras filas también. Todos los valores coincidentes correspondientes se extraen y combinan en una sola celda. Ver captura de pantalla:

=TEXTJOIN(", ", TRUE, FILTER($B$2:$B$16, $A$2:$A$16=D2, ""))

vlookup and concatenate multiple values with TEXTJOIN and FILTER Functions

Explicación de esta fórmula:
  1. FILTER($B$2:$B$16, $A$2:$A$16=D2, ""): Esta parte de la fórmula verifica cada valor en $A$2:$A$16; si coincide con el valor en D2, el valor correspondiente en $B$2:$B$16 se incluirá en el arreglo de resultados.
    • $B$2:$B$16: El rango desde el cual se recuperarán los valores coincidentes.
    • $A$2:$A$16=D2: La condición bajo la cual se seleccionan los valores — solo aquellas filas donde $A$2:$A$16 sea igual al contenido en D2 se procesarán.
  2. TEXTJOIN(", ", TRUE, ...): Esta función toma la salida de la función FILTER (un arreglo de coincidencias) y las concatena en una cadena de texto, separadas por el delimitador especificado (coma y espacio), ignorando automáticamente las entradas vacías.
    • ", ": Establece coma y espacio como separador; puedes cambiar este símbolo según sea necesario, por ejemplo, usar punto y coma o saltos de línea.
    • TRUE: Asegura que las celdas vacías se ignoren en el proceso de combinación, de modo que obtienes una salida bien formateada.

Nota especial: Este método requiere Excel 365 o 2021 y no funciona en versiones anteriores (por ejemplo, Excel 2019, 2016 u otras más antiguas). Siempre verifica tu versión de Excel antes de aplicarlo.

Consejo: Si tu valor de búsqueda (por ejemplo, D2) cambia o se agregan elementos coincidentes adicionales al rango de datos, el resultado se actualiza automáticamente sin necesidad de pasos adicionales.

Posibles limitaciones: En conjuntos de datos muy grandes, el tiempo de cálculo de la fórmula puede aumentar. Además, los usuarios deben asegurarse de que no hay celdas combinadas en los rangos de búsqueda o resultados, ya que estas pueden causar errores en la fórmula.


Búsqueda vertical y concatenación de múltiples valores correspondientes con Kutools para Excel

Si encuentras complicados los métodos de fórmulas integradas o tu versión de Excel no soporta funciones avanzadas como TEXTJOIN y FILTER, Kutools para Excel ofrece una solución gráfica amigable para el usuario. La función Búsqueda uno a muchos en Kutools te permite buscar y concatenar múltiples resultados coincidentes con unos pocos pasos, lo que la hace adecuada tanto para principiantes como para usuarios avanzados. Con Kutools, no es necesario escribir fórmulas o códigos complicados, y es especialmente útil al manejar grandes o variables conjuntos de datos que requieren búsquedas y agregaciones repetidas.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

Después de instalar Kutools para Excel, sigue los siguientes pasos:

Haz clic en Kutools > Super BUSCARV > Búsqueda uno a muchos (devuelve múltiples resultados) para abrir el cuadro de diálogo de configuración. Dentro de este cuadro de diálogo, puedes configurar rápidamente tus ajustes de búsqueda y salida siguiendo estos pasos:

  1. Selecciona las celdas de salida objetivo para los resultados concatenados y las celdas que contienen los valores que deseas buscar;
  2. Indica el rango de tabla que contiene tanto la clave de búsqueda como las columnas de resultados;
  3. Especifica qué columna contiene las claves de búsqueda (Columna Clave) y la columna cuyos valores se concatenarán (Columna de Devolución);
  4. Haz clic en el botón Aceptar para confirmar tus ajustes y procesar los datos.
     specify the options in the dialog box

Resultado: Kutools ahora mostrará todos los valores coincidentes y concatenados en tu celda de salida seleccionada. Ver captura de pantalla:
concatenated based on the criteria by kutools

Este método es altamente recomendado para aquellos que prefieren trabajar desde la interfaz de Excel sin fórmulas o códigos complejos. También reduce la probabilidad de errores en las fórmulas y mejora la productividad al manejar tareas repetitivas de búsqueda y concatenación.


Búsqueda vertical y concatenación de múltiples valores correspondientes mediante Función Definida por el Usuario

Para usuarios que son expertos en VBA (Visual Basic for Applications), o aquellos que usan versiones antiguas de Excel que carecen de compatibilidad con matrices dinámicas o la función FILTER, puedes crear una Función Definida por el Usuario (UDF) personalizada para lograr la concatenación flexible de múltiples resultados. Este método es universalmente compatible con todas las versiones de Excel y puede adaptarse a símbolos de separación particulares o condiciones.

1. Mantén presionadas las teclas ALT + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.

2. Haz clic en Insertar > Módulo, y pega el siguiente código en la Ventana de Módulo.

Código VBA: Búsqueda vertical y concatenación de múltiples valores coincidentes en una celda

Function ConcatenateMatches(LookupValue As String, LookupRange As Range, ReturnRange As Range, Optional Delimiter As String = ", ") As String
'Updateby Extendoffice
    Dim Cell As Range
    Dim Result As String
    Result = ""
    For Each Cell In LookupRange
        If Cell.Value = LookupValue Then
            Result = Result & Cell.Offset(0, ReturnRange.Column - LookupRange.Column).Value & Delimiter
        End If
    Next Cell
    If Result <> "" Then
        Result = Left(Result, Len(Result) - Len(Delimiter))
    End If
    ConcatenateMatches = Result
End Function

3. Guarda y cierra el editor de VBA. Regresa a tu hoja de trabajo, y usa esta UDF ingresando la fórmula: =ConcatenateMatches(D2, $A$2:$A$16, $B$2:$B$16) en una celda en blanco donde quieras tu resultado. Arrastra el controlador de relleno hacia abajo para copiar la fórmula en otras celdas según sea necesario. Todos los valores correspondientes basados en un valor de búsqueda específico se devolverán y concatenarán en una sola celda, separados por una coma y un espacio. Ver captura de pantalla:

concatenated based on the criteria by vba

Explicación de esta fórmula:
  • D2: El valor de búsqueda que debe coincidir dentro de tu conjunto de datos (LookupValue).
  • A2:A16: El rango donde la función busca el valor de búsqueda (LookupRange).
  • B2:B16: El rango que contiene los valores a concatenar cuando el valor de búsqueda coincide (ReturnRange).

Búsqueda vertical y concatenación de múltiples valores correspondientes con código VBA

Para escenarios que requieran uso repetido o para aquellos que deseen evitar funciones personalizadas en las celdas de la hoja de trabajo, puedes utilizar una macro VBA lista para usar para concatenar resultados directamente. Este método funciona bien en entornos compartidos donde no todos los usuarios puedan tener la misma versión o complementos.

1. Haz clic en Herramientas de Desarrollo > Visual Basic para abrir el editor de VBA.

2. En la ventana de VBA, haz clic en Insertar > Módulo, luego pega este código en el módulo:

Sub VLookupAndConcatenate()
    Dim ws As Worksheet
    Dim dataRange As Range, lookupRange As Range, resultRange As Range
    Dim dict As Object
    Dim i As Long, lastRow As Long
    Dim lookupValue As Variant, result As String
    Dim delimiter As String
    delimiter = ", "
    Set dict = CreateObject("Scripting.Dictionary")
    Set ws = ActiveSheet
    On Error Resume Next
    Set dataRange = Application.InputBox( _
        Prompt:="Please select the data range (contains lookup column and result column)", _
        Title:="Select Data Range", _
        Type:=8)
    On Error GoTo 0
    If dataRange Is Nothing Then Exit Sub
    On Error Resume Next
    Set lookupRange = Application.InputBox( _
        Prompt:="Please select the lookup range (single column)", _
        Title:="Select Lookup Range", _
        Type:=8)
    On Error GoTo 0
    If lookupRange Is Nothing Then Exit Sub
    On Error Resume Next
    Set resultRange = Application.InputBox( _
        Prompt:="Please select the starting cell for results output", _
        Title:="Select Output Location", _
        Type:=8)
    On Error GoTo 0
    If resultRange Is Nothing Then Exit Sub
    resultRange.Resize(lookupRange.Rows.Count, 1).ClearContents
    For i = 1 To dataRange.Rows.Count
        lookupValue = dataRange.Cells(i, 1).Value
        If Not dict.Exists(lookupValue) Then
            dict.Add lookupValue, dataRange.Cells(i, 2).Value
        Else
            dict(lookupValue) = dict(lookupValue) & delimiter & dataRange.Cells(i, 2).Value
        End If
    Next i
    For i = 1 To lookupRange.Rows.Count
        lookupValue = lookupRange.Cells(i, 1).Value
        If dict.Exists(lookupValue) Then
            resultRange.Cells(i, 1).Value = dict(lookupValue)
        Else
            resultRange.Cells(i, 1).Value = "Not Found"
        End If
    Next i
    MsgBox "Operation completed! Processed " & lookupRange.Rows.Count & " lookup values.", vbInformation
End Sub

3. Haz clic en el Run button botón para ejecutar la macro. Los cuadros de entrada te pedirán que selecciones tu rango de datos, rango de búsqueda, rango de resultados. El resultado concatenado se muestra directamente en las celdas de salida seleccionadas.

Este enfoque de macro es particularmente útil si realizas frecuentemente búsquedas de concatenación múltiple con diferentes valores, ya que evita llenar la hoja de trabajo con llamadas UDF.

Puedes ajustar fácilmente el delimitador en el código si es necesario, y extender la macro para generar resultados a una celda o archivo según tu flujo de trabajo.

Concatenar múltiples valores correspondientes en Excel es posible usando varios enfoques, cada uno con beneficios específicos dependiendo de tu situación. Ya sea que elijas fórmulas de matriz dinámica, complementos como Kutools para Excel o métodos basados en VBA, mejorarás tu capacidad para analizar y mostrar datos agrupados de manera eficiente. Dependiendo del tamaño y la complejidad de tu conjunto de datos, considera qué enfoque ofrece el mejor rendimiento y facilidad de mantenimiento para ti o tu equipo. En operaciones diarias, verifica la consistencia de los datos, evita las celdas combinadas y verifica los rangos de referencia para obtener los mejores resultados. Si encuentras errores en los cálculos de fórmulas, revisa nuevamente que tus rangos coincidan con los datos y que utilices el método correcto de entrada de fórmulas para tu versión de Excel.

Para técnicas avanzadas de Excel y una amplia gama de guías prácticas paso a paso, visita nuestra extensa biblioteca de tutoriales.

Las mejores herramientas de productividad para Office

🤖 Asistente de IA de Kutools: Revoluciona el análisis de datos basado en: Ejecución inteligente |Generar código |Crear fórmulas personalizadas |Analizar datos y generar gráficos |Invocar funciones mejoradas
Funciones populares: Buscar, resaltar o marcar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda con múltiples criterios | Búsqueda de múltiples valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente listas desplegables | Lista desplegable dependiente | Lista desplegable con selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Cambiar la visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de libros y hojas de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Encriptar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtro negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas de combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) | ... y mucho más
Utiliza Kutools en tu idioma preferido: ¡compatible con Inglés, Español, Alemán, Francés, Chino y más de40 idiomas adicionales!

Impulsa al máximo tu dominio de Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para potenciar la productividad y ahorrar tiempo.Haz clic aquí para obtener la función que más necesitas...


Office Tab aporta una interfaz de pestañas a Office y hace tu trabajo mucho más sencillo

  • Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abre y crea varios documentos en nuevas pestañas de la misma ventana, en vez de en nuevas ventanas.
  • ¡Aumenta tu productividad hasta un50% y reduce cientos de clics de ratón cada día!