Como ver las flechas de filtros!

Escribo haber si me puedes ayudar, tengo una lista en excel con un textbox en el cual escribo algo dentro del textbox y filtra automáticamente la lista de excel, lo que quiero es que después de filtrar lo que pongo en el textbox, me aparezcan las flechas de filtro en los demás campos de la lista, eso lo quiero por si quiero filtrar en otro campo, usando las flechas del autofiltro.
Este es el código:
Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Application.ScreenUpdating = False
Range("c2").Value = "*" & TextBox1.Text & IIf(TextBox1.Text = "", "", "*")
Call Filtrar
Application.ScreenUpdating = True
End Sub
Private Sub Filtrar()
Application.ScreenUpdating = False
If ActiveSheet.FilterMode = True Then ActiveSheet.ShowAllData
uf = Range("F" & Cells.Rows.Count).End(xlUp).Row
Range("F10:G" & uf).AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("C1:C2"), Unique:=False
Application.ScreenUpdating = True

Respuesta
1

Debes añadir al final de tu macro una sencilla orden. Tal cual está te pondrá filtros en todos los campos con valores de la fila 1. Si quieres otros modifica este rango.

    Range("A1").Select
    Selection. AutoFilter

1 respuesta más de otro experto

Respuesta
1

H o l a: Estás filtrando con una filtro avanzado:

Range("F10:G" & uf). AdvancedFilter

Si activas el autofiltro perderás el filtro que hayas realizado con el filtro avanzado.

Te recomiendo que utilices el autofiltro en la macro, de esa manera mantendrás las flechas del autofiltro. Cambia las macros por esta:

Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    Application.ScreenUpdating = False
    uf = Range("F" & Cells.Rows.Count).End(xlUp).Row
    ActiveSheet.Range("F10:G" & uf).AutoFilter Field:=1, Criteria1:="=*" & TextBox1.Value & "*"
    Application.ScreenUpdating = True
End Sub

Ya no es necesario utilizar las celdas C1 y C2.

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

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas