Lista desplegable

Hola fejoal. Ojala me puedas ayudar, ya que creo para ti puede ser simple. Necesito saber como puedo rescatar múltiples valores seleccionados, desde una lista desplegable (listbox). Este control lo he puesto en una hoja de calculo, no en un formulario, ya que es el único que ocupa el libro. Sé que debo usar esta lista desplegable con el valor múltiple o extendida, pero no se como hacer referencia al control posteriormente. Por si acaso este es un ejemplo.
En el rango a1:a28 tengo a, b, c, d... Por, y, z, que lo dejo como "rango de entrada" del control y activo la casilla "tipo de selección" en múltiple. Luego sobre la lista desplegable hago click en cualquier elemento y quedan marcados, por tanto lo que quiero saber es cuales han sido seleccionados. Te agradezco mucho tu ayuda.
1

1 Respuesta

540.825 pts. Por falta de tiempo para responder como me gusta...
La verdad es que no fue tan simple porque nunca lo utilicé así.
Pero bueno, la idea es que al ser una selección múltiple una única variable o celda no será de suficiente. Por lo tanto recurriremos a una matriz.
Como no sé exactamente que quieres hacer con los elementos seleccionados la siguiente macro los irá mostrando consecutivamente en un cuadro de mensajes y luego los escribirá consecutivamente en las celdas a partir de la A1 hacia abajo.
Considero que, teniendo la idea de cómo se capturan los datos en Visual Basic, podrás aplicarlos a tu proyecto personal.
Bien, esta es la macro que toma los datos una vez que hayas hecho la selección en tu listbox:
Sub Captura()
Dim Selelista() As Variant
SeleItem = 0
For I = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(I) = True Then
ReDim Preserve Selelista(SeleItem)
Selelista(SeleItem) = ListBox1.List(I)
SeleItem = SeleItem + 1
End If
Next I
For sele = 0 To UBound(Selelista)
MsgBox Selelista(sele)
Range("A1").Offset(sele).Value = Selelista(sele)
Next sele
End Sub
- Ingresa al sitio www.porloschicos.com y, si quieres,
presiona el botón de donación (es gratis).
Confío en que lo harás.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas