¿Quizás pueda usar la funcionalidad de autofiltro de Excel?

Alternativamente, si no desea hacer clic en el filtro pero usa una columna separada para especificar los valores del filtro, puede probar el método descrito en esta página :
Vaya a la hoja de trabajo en la que desea filtrar automáticamente la fecha según el valor de celda que ingresó.
Haga clic derecho en la pestaña de la hoja y seleccione Ver código en el menú contextual, en la ventana emergente de Microsoft Visual Basic para Aplicaciones, copie y pegue el siguiente código en la ventana en blanco del Módulo, vea la captura de pantalla:
Código VBA: datos de filtro automático según el valor de celda ingresado:
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20160606
If Target.Address = Range("E2").Address Then
Range("A1:C20").CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("E1:E2")
End If
End Sub
Nota: En el código anterior, A1: C20 es su rango de datos que desea filtrar, E2 es el valor objetivo en el que desea filtrar y E1: E2 es su celda de criterio según la cual se filtrará. Puedes cambiarlos a tu necesidad.
- Ahora, cuando ingrese los criterios en la celda E1 y E2 y presione la tecla Intro, sus datos serán filtrados por los valores de la celda automáticamente.