¿Cómo filtrar datos en Excel a partir de una selección en una lista desplegable?
En Excel, muchos usuarios están familiarizados con el filtrado de datos mediante la función Estándar de filtro. Sin embargo, en ocasiones puede desear filtrar o mostrar datos de forma interactiva utilizando una selección en Lista desplegable. Por ejemplo, podría necesitar que las filas de datos se actualicen dinámicamente y muestren únicamente la información que coincide con lo seleccionado en un menú desplegable, tal como se muestra en la captura de pantalla siguiente. Este enfoque permite crear informes, paneles e impresos interactivos más intuitivos. Este artículo expone varios métodos prácticos para filtrar o resaltar visualmente los datos en función de las selecciones en Lista desplegable en una o dos hojas de cálculo, ofreciéndole opciones flexibles adaptadas a distintas necesidades.

Filtrar datos a partir de una selección en lista desplegable en dos hojas de cálculo con código VBA
Filtrar datos a partir de una selección en lista desplegable en una hoja de cálculo con fórmulas auxiliares
Para filtrar datos en función de una Lista desplegable, puede configurar una serie de columnas auxiliares mediante fórmulas para extraer dinámicamente las filas coincidentes. Este método es ideal cuando desea mostrar únicamente los registros relevantes en la misma hoja de cálculo, sin utilizar macros. Siga estos pasos:
1. Comience insertando la lista desplegable. Seleccione la celda donde quiera el menú desplegable y vaya a Datos > Validación de datos > Validación de datos. Este paso crea una celda desde la que los usuarios pueden elegir un elemento por el que filtrar.

2. En el cuadro de diálogo Validación de datos, bajo la pestaña Configuración, seleccione Lista en el desplegable Permitir y, a continuación, haga clic en el botón
para resaltar el rango de valores de su lista desplegable. Utilizar un rango con nombre o una tabla como origen facilitará que las listas se actualicen automáticamente más adelante.

3. Una vez configurada su lista desplegable, seleccione cualquier elemento para aplicar el filtro. En la celda D2, introduzca la siguiente fórmula (suponiendo que su selección del menú desplegable esté en la columna H):
=ROWS($A$2:A2) Aquí, A2 hace referencia a la primera celda de la columna que contiene los datos a comparar. Arrastre el controlador de relleno hacia abajo para aplicarlo a todas las filas pertinentes. Esta columna auxiliar genera números consecutivos para las filas, facilitando su referencia posterior.

4. A continuación, en la celda E2, introduce:
=IF(A2=$H$2,D2,"") Esta fórmula comprueba si el valor en A2 coincide con el elemento seleccionado en el menú desplegable de H2. Si coinciden, devuelve el número de fila de D2; de lo contrario, deja la celda en blanco. Este paso es crucial para el filtrado: asegúrese de que la referencia a la celda del menú desplegable (aquí)H2) no cambie inesperadamente.

5. En la celda F2, introduce:
=IFERROR(SMALL($E$2:$E$17,D2),"") Esta fórmula extrae el número de filas de los datos filtrados, permitiéndole recuperar posteriormente las entradas correspondientes. Asegúrese de que el rango E2:E17 cubra todas sus celdas con fórmulas de filtrado. Extienda el controlador de relleno hacia abajo según sea necesario.

6. Para mostrar los resultados filtrados, introduce la siguiente fórmula en la celda J2:
=IFERROR(INDEX($A$2:$C$17,$F2,COLUMNS($J$2:J2)),"") Copie esta fórmula desde J2 hasta L2 para mostrar el primer registro coincidente. Este paso utiliza los resultados de sus columnas auxiliares para recuperar las filas de datos reales en función de la selección del menú desplegable. Ajuste las columnas si su conjunto de datos original utiliza un rango distinto.

Nota: A2:C17 es su tabla original, F2 es la columna auxiliar filtrada y J2 es donde desea que aparezca el resultado.
7. Arrastre el controlador de relleno hacia abajo en todas las columnas de salida para mostrar todos los registros coincidentes.

8. Ahora, cada vez que seleccione un elemento en la lista desplegable, la tabla inferior se actualizará dinámicamente para mostrar únicamente las filas que coincidan con su elección.


Potencie las listas desplegables de Excel con las funciones mejoradas de Kutools
Aumente su productividad con las capacidades mejoradas de listas desplegables de Kutools para Excel. Este conjunto de funciones supera las funcionalidades básicas de Excel para optimizar su flujo de trabajo e incluye:
- Crear una lista desplegable con selección múltiple: Seleccione varias opciones a la vez para gestionar sus datos de forma eficiente.
- Lista desplegable con casilla de verificación: potencie la interacción del usuario y mejore la claridad en sus hojas de cálculo.
- Crear una lista desplegable dinámica: se actualiza automáticamente según los cambios en los datos, garantizando siempre su precisión.
- Hacer lista desplegable buscable: Localice rápidamente las entradas que necesita, ahorrando tiempo y evitando molestias.
Filtrar datos a partir de una selección en lista desplegable en dos hojas de cálculo con código VBA
A veces, es posible que necesite filtrar datos en una hoja de cálculo tras seleccionar un elemento en una lista desplegable ubicada en otra hoja. Por ejemplo, Hoja1 contiene la selección y Hoja2 alberga la tabla que debe filtrarse. En estos casos, VBA constituye una solución práctica, ya que las fórmulas no pueden actualizar directamente otras hojas en respuesta a un evento. Este enfoque resulta ideal para paneles, informes o libros resumen en los que los rangos de origen y las entradas del usuario están separados para lograr una mayor claridad.
1. Haga clic con el botón derecho en la pestaña de la hoja (por ejemplo, Hoja1) que contiene la celda con el menú desplegable y seleccione Ver código. En la ventana de Microsoft Visual Basic para Aplicaciones, copie y pegue el siguiente código en el módulo en blanco:
Código VBA: Filtrar datos a partir de una selección en lista desplegable en dos hojas:
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
On Error Resume Next
If Not Intersect(Range("A2"), Target) Is Nothing Then
Application.EnableEvents = False
If Range("A2").Value = "" Then
Worksheets("Sheet2").ShowAllData
Else
Worksheets("Sheet2").Range("A2").AutoFilter 1, Range("A2").Value
End If
Application.EnableEvents = True
End If
End Sub
Nota: En el código, A2 hace referencia a la celda del menú desplegable, Hoja2 es donde se aplica el filtro y AutoFiltro 1 designa la columna por la que se filtra. Ajuste estos elementos según la disposición de sus datos. Asegúrese de que los nombres de las hojas y las referencias de celda coincidan exactamente con su estructura real para evitar errores en tiempo de ejecución. Si observa un comportamiento inesperado, compruebe si hay protección de hoja, celdas combinadas u ocultación de datos que puedan interferir con el método AutoFiltro.

2. Ahora, al seleccionar cualquier opción del menú desplegable en Hoja1, los datos de Hoja2 se filtran al instante, lo que facilita el análisis entre hojas para elaborar informes y realizar revisiones.

Tenga en cuenta que las soluciones basadas en VBA requieren que las macros estén habilitadas. Guarde siempre su libro como archivo .xlsm si desea que el código persista. Si el filtro no se actualiza, revise la configuración de seguridad de macros y asegúrese de que las referencias y el nombre de la hoja de cálculo coincidan. Evite utilizar datos sensibles o críticos para el negocio sin una copia de seguridad adecuada, ya que las macros pueden realizar cambios masivos.
Usar formato condicional - Resaltar automáticamente todas las filas que coincidan con la selección del menú desplegable
Si su objetivo no es ocultar ni extraer filas, sino simplemente resaltar visualmente aquellas que coincidan con la selección del menú desplegable, el formato condicional ofrece un enfoque rápido y fácil de usar. Utilícelo cuando desee que los usuarios centren su atención en las líneas relevantes sin eliminar ni mover datos.
El uso más habitual se da en paneles, informes o listas extensas, donde el resaltado muestra al instante qué entradas están relacionadas con la opción seleccionada, mejorando así la legibilidad de los datos.
- Seleccione su rango de datos: Por ejemplo, seleccione A2:C100.
- Acceda a la herramienta Usar formato condicional: Vaya a Inicio > Usar formato condicional > Nueva regla.
- Cree su regla: Seleccione Usar una fórmula para determinar qué celdas dar formato e introduzca una fórmula como:
Esto resaltará cualquier fila en la que el valor de la columna A coincida con la selección del menú desplegable en H2.=$A2=$H$2 - Establezca el formato: Haga clic en Formato, elija un color de relleno o un formato de texto y pulse Aceptar para confirmar.
Ventajas: configuración rápida, funcionamiento inmediato al cambiar las selecciones y sin alterar la estructura de la tabla. Sin embargo, esta opción solo resalta los registros (no los filtra ni los extrae). En tablas grandes, utiliza colores de alto contraste para asegurarte de que el Rango de fila resaltada sea claramente visible. Las reglas de Usar formato condicional se aplican a nivel de celda; si las referencias de celda no son correctas, es posible que no todas las filas se resalten como esperas. Usa referencias absolutas (como $H$2) en tu fórmula para garantizar coherencia.
Si desea eliminar el resaltado, vaya simplemente a Usar formato condicional > Borrar reglas. Para resaltados con varias condiciones o en varias columnas, ajuste su fórmula para comprobar más columnas o utilice la función Y.
Las mejores herramientas de productividad para Office
Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...
Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
- ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!
Todos los complementos de Kutools en un solo instalador.
Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.
- Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un instalador, una licencia— configuración en minutos (compatible con MSI)
- Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
- Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
- La mejor relación calidad-precio— ahorre frente a la compra individual de complementos