Propiedad Control.ItemsSelected (Access)
Utilice la propiedad ItemsSelected para devolver una referencia de solo lectura a la colección ItemsSelected oculta. Esta colección oculta puede usarse para ontener acceso a los datos de las filas seleccionadas de un control de cuadro de lista de selección múltiple.
Sintaxis
expresión. ElementosSeleccionados
Expresión Variable que representa un objeto Control .
Comentarios
La colección ItemsSelected es diferente de otras colecciones en cuanto que es una colección de valores de tipo Variants en lugar de objetos. Cada valor Variant es un índice entero que hace referencia a una fila seleccionada en un cuadro de lista o cuadro combinado.
Use la colección ItemsSelected en combinación con la propiedad Column o la propiedad ItemData para recuperar datos de las filas seleccionadas en un cuadro de lista o cuadro combinado. Puede enumerar la colección ItemsSelected mediante la For Each... Siguiente instrucción.
Por ejemplo, si tiene un cuadro de lista Empleados en un formulario, puede enumerar la colección ItemsSelected y usar la propiedad ItemData del control para devolver el valor de la columna enlazada para cada fila seleccionada en el cuadro de lista.
Para habilitar la selección múltiple de filas en un cuadro de lista, establezca la propiedad MultiSelect en Simple o extendida del control.
La colección ItemsSelected tiene dos propiedades, las propiedades Count y Item , y no hay métodos.
Ejemplo:
En el ejemplo siguiente se imprime el valor de la columna enlazada para cada fila seleccionada en un cuadro de lista Nombres de un formulario Contactos . Para probar este ejemplo, cree el cuadro de lista y establezca su propiedad BoundColumn como quiera y su propiedad MultiSelect en Simple o Extendida. Cambie a la vista Formulario, seleccione varias filas en el cuadro de lista y ejecute el código siguiente.
Sub BoundData()
Dim frm As Form, ctl As Control
Dim varItm As Variant
Set frm = Forms!Contacts
Set ctl = frm!Names
For Each varItm In ctl.ItemsSelected
Debug.Print ctl.ItemData(varItm)
Next varItm
End Sub
En el ejemplo siguiente se usa el mismo control de cuadro de lista, pero se imprimen los valores de cada columna para cada fila seleccionada en el cuadro de lista, en lugar de solo los valores de la columna enlazada.
Sub AllSelectedData()
Dim frm As Form, ctl As Control
Dim varItm As Variant, intI As Integer
Set frm = Forms!Contacts
Set ctl = frm!Names
For Each varItm In ctl.ItemsSelected
For intI = 0 To ctl.ColumnCount - 1
Debug.Print ctl.Column(intI, varItm)
Next intI
Debug.Print
Next varItm
End Sub
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.