Saltar al contenido principal

¿Cómo filtrar datos con solo hacer clic en el contenido de la celda en Excel?

Normalmente, en Excel, puede aplicar la función de filtro para filtrar datos según sus necesidades. Pero, en este artículo, hablaré sobre cómo filtrar datos simplemente haciendo clic en el valor de una celda. Tome los siguientes datos como ejemplo, cuando hago doble clic en la celda A2, todos los registros correspondientes basados ​​en este valor seleccionado se filtrarán a la vez como se muestra a continuación.

doc filtro haciendo clic en 1

Filtrar datos simplemente haciendo clic en un valor de celda con código VBA


flecha azul burbuja derecha Filtrar datos simplemente haciendo clic en un valor de celda con código VBA

Aquí, le proporcionaré un código VBA para que filtre los datos haciendo clic en una celda, haga lo siguiente:

1. Primero, dé a sus datos un nombre de rango, ingrese un nombre de rango en el Nombre de buzóny presione Participar clave, vea la captura de pantalla:

doc filtro haciendo clic en 2

2. Haga clic con el botón derecho en la pestaña de la hoja que desea filtrar haciendo clic en la celda y luego elija Ver código desde el menú contextual, y en el Microsoft Visual Basic para aplicaciones ventana, copie y pegue el siguiente código en el módulo en blanco:

Código de VBA: Filtre los datos haciendo clic en el valor de la 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

doc filtro haciendo clic en 3

Note: En el código anterior, mis datos es el nombre de rango que ha creado para su rango de datos, cámbielo según sus necesidades.

3. Luego guarde y cierre la ventana de código, ahora, cuando haga doble clic en cualquier celda del rango de datos que desea filtrar, sus registros correspondientes se filtrarán como se muestra en la siguiente captura de pantalla:

doc filtro haciendo clic en 4


Más artículos relacionados:

¿Cómo cambiar el valor de la celda haciendo clic en la celda?

¿Cómo ordenar los datos de la columna haciendo clic en el encabezado en Excel?

Las mejores herramientas de productividad de oficina

🤖 Asistente de IA de Kutools: Revolucionar el análisis de datos basado en: Ejecución inteligente   |  Generar codigo  |  Crear fórmulas personalizadas  |  Analizar datos y generar gráficos  |  Invocar funciones de Kutools...
Características populares: Buscar, resaltar o identificar duplicados   |  Eliminar filas en blanco   |  Combine columnas o celdas sin perder datos   |   Ronda sin fórmula ...
Super búsqueda: Búsqueda virtual de criterios múltiples    Búsqueda V de valores múltiples  |   VLookup en varias hojas   |   Búsqueda difusa ....
Lista desplegable avanzada: Crear rápidamente una lista desplegable   |  Lista desplegable dependiente   |  Lista desplegable de selección múltiple ....
Administrador de columnas: Agregar un número específico de columnas  |  Mover columnas  |  Toggle Estado de visibilidad de columnas ocultas  |  Comparar rangos y columnas ...
Características destacadas: Enfoque de cuadrícula   |  Vista de diseño   |   Gran barra de fórmulas    Administrador de hojas y libros de trabajo   |  Biblioteca de Recursos (Texto automático)   |  Selector de fechas   |  Combinar hojas de trabajo   |  Cifrar/descifrar celdas    Enviar correos electrónicos por lista   |  Súper filtro   |   Filtro especial (filtro negrita/cursiva/tachado...) ...
Los 15 mejores conjuntos de herramientas12 Texto Herramientas (Añadir texto, Quitar caracteres, ...)   |   50+ Tabla Tipos (Diagrama de Gantt, ...)   |   40+ Práctico Fórmulas (Calcular la edad según el cumpleaños, ...)   |   19 Inserción Herramientas (Insertar código QR, Insertar imagen desde la ruta, ...)   |   12 Conversión Herramientas (Números a palabras, Conversión de Moneda, ...)   |   7 Fusionar y dividir Herramientas (Filas combinadas avanzadas, Células partidas, ...)   |   ... y más

Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo.  Haga clic aquí para obtener la función que más necesita...

Descripción


Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilite 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 de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi, I have a summary sheet, that calculates how many lines on the main sheet that are within a certain date range. I want to be able to double click on a certain date range and it then filter out the data on the main sheet to the date range I double clicked on. What code would I need for this please
This comment was minimized by the moderator on the site
Buenas tardes

Excelente aportación ... lástima que no funcione con un archivo protegido ... qué podría cambiarle para que si funcione?

Saludos
This comment was minimized by the moderator on the site
Muito bom!
Entretanto, só funciona em um intervalo.
Eu queria aplicá-lo em uma Tabela, é possível? Ficaria muito agradecido se sim!!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations