Excel - Consulta!!

 
Vista:

Consulta!!

Publicado por Carlos Aviles (17 intervenciones) el 19/02/2007 19:42:47
AHI LES VA !!

TENGO UNA FORM Y DENTRO DE ESTA TENGO UNA LISTBOX !!! QUISIERA SABER SI PUEDO HACER UNA BUSQUEDA DENTRO DE ESTA LISTBOX CON UNA TEXTBOX Y UN BOTON DE BUSQUEDA ...EJEMPLO

YO ESCRIBO "PLUMA" DENTRO DEL TEXT Y AL PRESIONAR EL BOTON DE BUSQUEDA ME SEÑALE LAS PALABRAS QUE CONTENGA PLUMA DENTRO DE MI LISTBOX !!!!

ESPERO SEA ALGO SENCILLO PORKE YA NO TENGO MUCHO TIEMPECILLO JOJOJO !!!

GRACIAS DE ANTEM,ANO Y SALUDOS !!!

Est pregunta ya la habia hecho con anterioridad pero nadie me a podido responder :S
Buenos la vuelvo a poner para ver si alguien de casualidad ya supo como jeje

gracias !! :d
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Consulta!!

Publicado por Anonimo (69 intervenciones) el 19/02/2007 20:01:43
no te respondieron porq no se puedeeeeeeeeeeeeeeeeeeeeeeeee..................................................
de verrdad q no
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Abraham Valencia
Val: 313
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

RE:Consulta!!

Publicado por Abraham Valencia (2415 intervenciones) el 19/02/2007 20:09:56
hola CArlos. Si vi tu anterior mensaje; yo no lo respondi porque no logre hacerlo. He estado leyendo y mirando en otros foros, y la verdad, aparentemente no se puede lograr lo que deseas.

Abraham

PD: Cuando no nuestro querido y odiado "anonimo" jejeje. Descubriremos algun dia quien es?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta!!

Publicado por Carlos Aviles (17 intervenciones) el 19/02/2007 20:21:02
pues si creo que es imposible lo que deseo pero pues bueno ya ni modo jeje que se le va hacer, voy a tener que hablar con los de microsoft jejej

saludos abraham y saludos anonimo :o
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta!!

Publicado por Dante (28 intervenciones) el 20/02/2007 09:40:14
Hola a todos, si se puede y con un código sencillo. Para empezar deberíamos conocer la forma
como se llena el control listbox, es decir, si mediante código con .AddItem o mediante la
propiedad RowSource, si es el primer caso (que lo más probable es que no) se puede usar el operador "Like" para determinar
si agregamos el elemento o no, para el segundo caso que creo es y por eso me enfoco hacia éste, es indicar un rango de cierta hoja
donde se encuentran los datos con que llenamos la lista, se logra mediante un filtro avanzado instruido a través del código, por ejemplo,
nuestra lista de datos debe empezar en A4 (En A4 el título de los datos,
cualquiera, ejemplo "Datos", apartir de A5 hacia abajo llenamos con todos los elementos que formarán la lista, sin restricciones)
A1 está reservada para contener nuevamente el titulo que elegimos anteriormente, debe ser el mismo (en este caso "Datos"). A2 resevada para el criterio y A3 debe estar necesariamente vacía.
En la columna B no colocamos nada, en ninguna celda,toda estas restricciones son debido a que uso el CurrentRegion, pueden ser omitidas si especificamos rangos.
OK, en C1 haremos nuestro esperado filtro de datos y con lo cual llenaremos el listbox.
Por cierta lógica una forma sencilla de depurar los datos del listbox de acuerdo al criterio debería ser recorriendo cada elemento
con un bucle y mediante un operador como el "Like" comparar con el criterio y eliminar si es necesario, esto se puede en el primer caso
cuando agregamos la lista con Additem, sin embargo cuando usamos RowSource esto no se puede porque el control se vuelve dependiente.
Bueno después de tanto bla bla este el código, la referencia específica de la hoja donde estarán los datos te corresponde a tí, pero
creanme que si funciona.....Saludos. Está asociado directamente al evento Change el TextBox.

Private Sub TextBox1_Change()
Range("A2") = "*" & TextBox1 & "*"
Range("A4").CurrentRegion.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"A1:A2"), CopyToRange:=Range("C1"), Unique:=True
ListBox1.RowSource = Range(Range("C2").Address & ":" & _
Range("C2").End(xlDown).Address).Address

End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Abraham Valencia
Val: 313
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

RE:Consulta!!

Publicado por Abraham Valencia (2415 intervenciones) el 20/02/2007 17:09:20
Dante, si lees bien el mensaje de Carlos, eso no es precisamente lo que necesita.

Abraham
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta!!

Publicado por JuanC (792 intervenciones) el 20/02/2007 22:20:56
La propiedad MultiSelect del ListBox1 debe ser fmMultiSelectExtended

Private Sub CommandButton1_Click()
Dim i&, n&, sText$
sText = LCase(TextBox1.Text)
If Trim(sText) = "" Then Exit Sub
With ListBox1
n = .ListCount - 1
For i = 0 To n
If InStr(1, .List(i), sText) > 0 Then
.Selected(i) = True
Else
.Selected(i) = False
End If
Next
End With
End Sub

Private Sub UserForm_Initialize()
With ListBox1
.Clear
.AddItem "pluma"
.AddItem "la vaca"
.AddItem "mama"
.AddItem "es pluma"
End With
End Sub

Saludos desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar