Macro para autofiltro con doble clic

¿Cuántas veces has escuchado de boca de tu jefe algo como “Venga!! Más rápido!! Necesito el informe para ayer!!”

Muchos de los informes que se crean dependen de un filtro que impide que se muestran datos no relevantes o incluso molestos en alguna ocasión.

Hoy te traigo una sencilla macro que, colocada en la hoja en la que se encuentren los datos que desees filtrar, te permitirá con un doble clic en el dato que necesites, filtrar todas las filas de la tabla.

 

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim rngTable As Range
Dim rngData As Range
Dim intColumn As Integer

    On Error Resume Next

    Application.ScreenUpdating = False
    Set rngTable = Range("Mi_Tabla")
    Set rngData = rngTable.Offset(1, 0).Resize(rngTable.Rows.Count - 1, rngTable.Columns.Count)

    If Not Application.Intersect(ActiveCell, rngData.Cells) Is Nothing Then
    ' Doble clic en los datos (sin incluir los encabezados de tabla

        intColumn = ActiveCell.Column - rngTable.Column + 1

        If ActiveSheet.AutoFilterMode = False Then
        ' Si el autofiltro está deshabilitado, se habilita
            rngTable.AutoFilter
        End If

        If ActiveSheet.AutoFilter.Filters(intColumn).On = True Then
            ' Si los datos están filtrados por esta columna, elimina el filtro
            rngTable.AutoFilter Field:=intColumn
        Else
            ' Si los datos NO están filtrados por esta columna, se crea el filtro
            rngTable.AutoFilter Field:=intColumn, Criteria1:=ActiveCell.Value
        End If

    End If

    ' Elimina datos
    Set rngData = Nothing
    Set rngTable = Nothing
    Application.ScreenUpdating = True

End Sub

Haz la prueba: Descárgate el archivo, pruébalo, y luego me cuentas.

 

filtro_doble_clic
Título: filtro_doble_clic (1079 clics)
Tamaño: 19 KB

¿Me ayudas a promocionar este contenido?

Share on facebook
Facebook
Share on google
Google+
Share on twitter
Twitter
Share on linkedin
LinkedIn
Consultoría plantillas Excel
Foro Excel
La destreza y el perfeccionismo quizá sean las dos virtudes que me permiten ayudar a mis clientes a facilitar las tareas administrativas de sus negocios... y son las culpables de que me guste el origami. +info.

¿Quieres ahorrarte horas de trabajo diario?

macros excel manual

Descarga este informe y aprenderás a crear tus propias macros de forma rápida y sencilla

INFORMACIÓN BÁSICA SOBRE PROTECCIÓN DE DATOS

Responsable: Sergio Andrés Celemín

Finalidad: Gestionar y enviar información de boletines y promociones a través de correo electrónico.

Legitimación: Consentimiento del interesado.

Destinatarios: Tus datos se encuentran alojados en mi hosting Hetzner Online GmbH.

Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso,
rectificación, supresión, oposición y demás derechos legalmente establecidos a
través del email sergio@ayudaexcel.com.

Información adicional: Encontrarás más información en la política de privacidad.