Tienes que usar un control ListBox de Microsoft Forms 2.0
Para ello pulsa el botón Más controles y selecciona el Microsoft Forms 2.0
ListBox
En este ejemplo usamos un Cuadro de lista del tipo Microsoft Forms 2.0
ListBox
llamado lst2CuadroLista.
Un cuadro de lista de los que trae estándar Access en el que el origen de
datos viene definido "a pelo" con una variable cadena.
Usamos también un cuadro de lista en el que el origen de datos es una cadena
que, a su vez toma los datos de una colección, que sí tiene el método Add y
Remove.
Éste es el código:
___________________________________________________
Private Sub Form_Open(Cancel As Integer)
Dim strDatos As String
Dim lngContador As Long
'Para rellenar un cuadro de lista tipo VB
'ó tipo ListBox de Microsoft Forms 2.0
'En este caso tiene como nombre lst2CuadroLista
With lst2CuadroLista
.AddItem "Primer elemento", 0
.AddItem "Segundo elemento", 1
.AddItem "Éste es ahora el primer elemento", 0
.AddItem "Cuarto elemento", 3
End With
'Para rellenar un cuadro de lista tipo Access
'hay que utilizar la propiedad OrigenDeLaFila (RowSource)
'1º hay que definir el tipo de origen de la fila (RowSourceType)
'Pongo como nombre del ListBox normal de Access lstCuadroLista
lstCuadroLista.RowSourceType = "Lista de valores"
'Ahora creamos la cadena que se pasará a RowSource
'Esta cadena tiene los datos separados por ";"
strDatos = "Primer elemento"
strDatos = strDatos & ";" & "Segundo elemento"
'El orden de aparición te lo tienes "que currar" con
'las cadenas
strDatos = "Éste es ahora el primer elemento" & ";" & strDatos
strDatos = strDatos & ";" & "Cuarto elemento"
'Asignamos la cadena a la propiedad RowSource
lstCuadroLista.RowSource = strDatos
'También puedes usar una colección como origen de datos
'para la cadena de RowSource
Dim colColeccionDatos As New Collection
With colColeccionDatos
.Add Item:="Primer elemento"
.Add Item:="Segundo elemento"
'Este nuevo elemento lo coloco delante del 1º
.Add Item:="Éste es ahora el primer elemento", Before:=1
.Add Item:="Cuarto elemento"
'Construyo ahora la cadena con los elementos de la colección
strDatos = .Item(1)
For lngContador = 2 To colColeccionDatos.Count
strDatos = strDatos & ";" & .Item(lngContador)
Next lngContador
End With
'Vamos a utilizar un Cuadro de lista llamado lstColeccion
'al que pasaremos los datos de la colección.
lstColeccion.RowSourceType = "Lista de valores"
lstColeccion.RowSource = strDatos
End Sub
___________________________________________________
--
Saludos desde la Calle Estafeta de Pamplona.
Eduardo
P.D.: Para contestarme personalmente quitar las XXX.
sol@ccess <soloa...@amialbacete.com> escribió en el mensaje de noticias
evS5jC3QAHA.164@cppssbbsa05...