Autofiltro

Hola:Valedor quiero usar el contenido de un inputbox como criterio en un autofiltro pero no se como hacerlo el código es el siguiente:
Dim prov As String
prov = InputBox("Proveedor")
Selection.AutoFilter Field:=5, Criteria1:="=*prov*", Operator:=xlAnd
End Sub
Este código lo grabe con el grabador de excel con las instrucciones:
Autofiltro, personalizar, contiene
Ojala me puedas ayudar gracias
Respuesta
1
Tu código esta bien, salvo un detalle, el criterio esta mal construido, prueba este otro:
Option Explicit
Public Sub Filtrar_Datos()
Dim strCriterio As String
'Solicitamos el crierio y le quitamos los espacios
strCriterio = Trim(InputBox("Cual es el criterio?", "Criterio"))
'Continuamos solo si NO esta vacio
If strCriterio <> "" Then
'Construimos el criterio, de esta forma te devolvera TODOS los
'que CONTENGAN el criterio pasado, para filtrar por ejemplo los
'que COMIENCEN seria así "=" & strCriterio & "*" y para filtrar lo
'que TERMINEN seria así "=*" & strCriterio
strCriterio = "=*" & strCriterio & "*"
'Y aplicamos el filtro, ten cuidado donde esta tu cursor, sino esta
'dentro del área de tus datos, te dará un error, podrías usar también
'Range("A1").AutoFilter, claro si tus datos em´piezan en A1
Selection.AutoFilter Field:=2, Criteria1:=strCriterio, Operator:=xlAnd
End If
End Sub
Recuerda que Field se refiere al NUMERO de campo que quieres filtrar, empezando por la izquierda es 1, 2 y así sucesivamente, saludos y no te olvide de finalizar la pregunta cuando estés satisfecho con la respuesta...
Hola :Valedor Gracias otra vez por contestarme tu respuesta esta muy bien me quedop claro los criterios que comienzan con...
Y los que terminan con..
Pero no me quedo claro los que
Contienen...
Te agradecería mucho si me lo aclraras gracias
En el ejemplo que te envíe, el criterio es el de Contienen, solo que yo lo llame Contengan, pero la diferencia es simple, los dos asteriscos, uno al principio y otro al final
strCriterio = "=*" & strCriterio & "*"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas