¿Cómo filtrar datos simplemente haciendo clic en el contenido de una celda en Excel?
Normalmente, en Excel, puedes aplicar la función Filtro para filtrar datos según tus necesidades. Sin embargo, en este artículo, hablaré sobre cómo filtrar datos simplemente haciendo clic en un valor de celda. Tomemos los siguientes datos como ejemplo: cuando hago doble clic en la celda A2, todos los registros correspondientes basados en este valor se filtrarán de inmediato, como se muestra en la siguiente captura de pantalla.
Filtrar datos simplemente haciendo clic en un valor de celda con código VBA
Filtrar datos simplemente haciendo clic en un valor de celda con código VBA
Aquí te proporcionaré un código VBA para que puedas filtrar datos haciendo clic en una celda; por favor, sigue estos pasos:
1. Primero, asigna un nombre de rango a tus datos; introduce un nombre de rango en el Cuadro de Nombres y presiona la tecla Enter, ver la siguiente captura de pantalla:
2. Haz clic derecho en la pestaña de la hoja en la que deseas filtrar haciendo clic en una celda, luego selecciona Ver Código desde el menú contextual, y en la ventana abierta de Microsoft Visual Basic para Aplicaciones, copia y pega el siguiente código en el Módulo en blanco:
Código VBA: Filtrar datos haciendo clic en el valor de una celda:
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'Updateby Extendoffice
Dim rgTable As Range
Dim rgData As Range
Dim xColumn As Integer
On Error Resume Next
Application.ScreenUpdating = False
Set rgTable = Range("mydata")
With rgTable
Set rgData = .Offset(1, 0).Resize(.Rows.Count - 1, .Columns.Count)
If Not Application.Intersect(ActiveCell, rgData.Cells) Is Nothing Then
xColumn = ActiveCell.Column - .Column + 1
If ActiveSheet.AutoFilterMode = False Then
.AutoFilter
End If
If ActiveSheet.AutoFilter.Filters(xColumn).On = True Then
.AutoFilter Field:=xColumn
Else
.AutoFilter Field:=xColumn, Criteria1:=ActiveCell.Value
End If
End If
End With
Set rgData = Nothing
Set rgTable = Nothing
Application.ScreenUpdating = True
End Sub
Nota: En el código anterior, mydata es el nombre del rango que has creado para tu rango de datos; cámbialo según sea necesario.
3. Luego guarda y cierra la ventana de código; ahora, cuando hagas doble clic en cualquier celda del rango de datos que deseas filtrar, sus registros correspondientes se filtrarán como se muestra en la siguiente captura de pantalla:

Descubre la Magia de Excel con Kutools AI
- Ejecución Inteligente: Realiza operaciones en celdas, analiza datos y crea gráficos, todo impulsado por comandos simples.
- Fórmulas Personalizadas: Genera fórmulas adaptadas para optimizar tus flujos de trabajo.
- Codificación VBA: Escribe e implementa código VBA sin esfuerzo.
- Interpretación de Fórmulas: Comprende fórmulas complejas con facilidad.
- Traducción de Texto: Supera las barreras del idioma dentro de tus hojas de cálculo.
Más artículos relacionados:
¿Cómo cambiar el valor de una celda haciendo clic en ella?
¿Cómo ordenar los datos de una columna haciendo clic en el encabezado en Excel?
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- 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 lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!