Como hago para que las celdas que yo seleccione en la hoja me les coloque filtro ?

Necesito una macro que diacuerdo a las celdas que yo seleccione les coloque filtro y ese filtro se haga por espacios vacíos así, yo selecciono esta dos celdas y que ejecute la macro y me haga el filtro.

Respuesta
1

H o l a : Veo que en tu hoja tienes los encabezados en la fila 2, entonces la macro funcionaría de esta forma.

Si seleccionas celdas de la fila 2, la macro se activa y realiza el autofiltro de celdas vacías; puedes seleccionar una celda o 2 celdas o todas las celdas que desees de la fila 2.

Si seleccionas alguna celda de la fila 1 el filtro se desactiva.

Si seleccionas alguna celda de la fila 3 en adelante no pasa nada.

Pon la siguiente macro en los eventos de tu hoja.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Por.Dante Amor
    If Target.Count > 100 Then Exit Sub
    If Target.Row = 1 Then
        If ActiveSheet.AutoFilterMode Then ActiveSheet.AutoFilterMode = False
        Exit Sub
    End If
    If Target.Row <> 2 Then Exit Sub
    If ActiveSheet.AutoFilterMode Then ActiveSheet.AutoFilterMode = False
    u = s
    c1 = Target.Cells(1, 1).Column
    c2 = c1 + Target.Columns.Count - 1
    u = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
    For i = 1 To Target.Columns.Count
        ActiveSheet.Range(Cells(2, c1), Cells(u, c2)).AutoFilter Field:=i, Criteria1:="="
    Next
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Buenos Días

Pero no ejecuta

ByVal Target As Range

Este código no me deja ejecutar la macro, ni me a parece el nombre de la macro para ejecutar que hago hay ya le coloque public y tampoco da

La macro no va en un módulo.

La macro debe ir en los eventos de tu hoja. Sigue las instrucciones para pegar el código en los eventos de tu hoja:

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

De esa forma la macro funcionará en automático, solamente tienes que seleccionar las celdas de la fila 2.

Revisa la siguiente imagen para que observes en dónde tienes que poner la macro, en la imagen se ve un ejemplo de la hoja llamada "Reporte", en tu caso tienes que darle doble click a la hoja en la que vas a poner la macro y en el panel del lado derecho pegas la macro.

Si tienes problemas, envíame tu archivo para adaptar la macro.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “MARIA GUERLY GARCIA SOACHA” y el título de esta pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas