Autofiltro con opción de búsqueda manual

Hola... Tengo un problema con una macro...
Tengo lo siguiente...
    a1   b1   c1   d1   e1   f1   g1   h1
1 45 65 02 20 03 09 01 01
2 08 06 17 11 09 06 07 02
3 45 02 19 74 03 01 55 03
4 41 47 09 05 08 11 66 04
Y así hasta 50
Como ven hay una numeración para cada fila en h1
yo tengo activado el autofiltro por la numeración...
Hice la macro para hacer automática la búsqueda.. Y me muestre solo la fila 03
Sub Macro1()
    Selection.AutoFilter Field:=1, Criteria1:="03"
    Selection.AutoFilter Field:=1
End Sub
Mi pregunta es la siguiente: se puede perfeccionar esta macro para que me salga una ventana para poner
manualmente mi búsqueda y darle enter y que salga lo que busco... Osea cambiar la fila a buscar... En lugar de 03 que me de la opción de cambiarlo manualmente las veces que quiera.. Y luego que vuelva a mostrar todo...
Gracias

1 respuesta

Respuesta
1
Esto si se puede lograr
Tienes que crear un formulario con un text box y un botón
Y le agras este código
Private Sub CommandButton1_Click()
    Selection.AutoFilter Field:=1, Criteria1:=TextBox1.Text
    Selection.AutoFilter Field:=1
End Sub
Gracias por responder... ¿hice esto esta bien..? (No me gusta mucho el formulario) porque no me filtra nada...
Sub prueba()
'se supone que busqueda es el texto introducino en inputbox
Dim busqueda As String
busqueda = InputBox("Entrar palabra a buscar", "Entrar")
Range("a1").Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:="busqueda", Operator:=xlFilterValues
End Sub
Como dije no me filtra nada... que puedo hacer en que estoy fallando...
Gracias
En el criterio quítale las comillas a búsqueda
Selection.AutoFilter Field:=1, Criteria1:=busqueda, Operator:=xlFilterValues
Me cuentas como te va
Hola... mira cambie lo de las comillas pero me da error en el criterio... aver si podes probarlo en un libro y fíjate como seria para que funcione... gracias
Yo lo prove y me funciono quítale el dim de la variable a ver si te funciona
'Dim busqueda As String
Hola.. estuve probando y me funciono con esto
Sub prueba_filtro()
'se supone que busqueda es el texto introducino en inputbox
busqueda = InputBox("Entrar palabra a buscar", "Entrar")
Range("Q1").Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:=busqueda
End Sub
pero por ejemplo para buscar el 59, tengo que poner 0059...porque..? yo tengo asi la numeracion en cuatro digitos...0001, 0002 , 0003 etc...hasta 00100 ..como hago para que poner unicamente 59 y me salga bien...y no poner 0059...que debo modificar de la macro...gracias
¿Pero en la celda lo tienes escrito como 0059 o como 59?
Lo que pasa es que el te lo busca como una cadena de texto no como numero
La celda la tengo como 0059, no como 59... ¿Cómo seria para que me lo tome como numero..?
Gracias
hmm ... voy a validar ya te cuento
Ya tengo una idea, dale formato de numero a toda la celda y me cuentas

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas