XL97: Cómo determinar qué elementos están seleccionados en un control ListBox

Seleccione idioma Seleccione idioma
Id. de artículo: 161346 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Resumen

En este artículo se explica cómo recuperar elementos seleccionados de un control ListBox que le permite seleccionar varios valores.

Más información

En un UserForm, cuando se establece la propiedad MultiSelect a "1 - fmMultiSelectMulti" (sin las comillas) para un control ListBox, puede elegir cualquier número de elementos de una lista. Por ejemplo, si una lista contiene Alpha, Bravo y Carlos, puede seleccionar ninguno, ninguno o todos los elementos.

Para determinar qué elementos están seleccionados, utilice la propiedad Selected del cuadro de lista. La propiedad Selected del cuadro de lista es una matriz de valores de que cada valor es verdadero (si el elemento está seleccionado) o false (si el elemento no está seleccionado). Por ejemplo, si la lista contiene 1, 2, 3 y 4 y 2 y 3 están activadas, la propiedad Selected es la siguiente matriz:
Es False, True, True, false
Esto es porque no se selecciona el primer elemento (1), se seleccionan los elementos segundo y tercero (2 y 3) y el cuarto elemento (4) no está seleccionado.

Procedimiento de ejemplo de Visual Basic

Microsoft proporciona ejemplos de programación con fines ilustrativos únicamente, sin ninguna garantía tanto expresa como implícita, incluyendo, pero sin limitarse a, las garantías implícitas de comerciabilidad e idoneidad para un propósito determinado. En este artículo se supone que está familiarizado con el lenguaje de programación que se muestra y las herramientas utilizadas para crear y depurar procedimientos. Los profesionales de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento, pero no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos a necesidades específicas.
Si tiene poca experiencia en programación, desea póngase en contacto con un Microsoft Certified Partner o servicios de consultoría de Microsoft. Para obtener más información, visite estos sitios Web de Microsoft:

Microsoft certificado Partners - https://partner.microsoft.com/global/30000104

Servicios de asesoramiento de Microsoft - http://support.microsoft.com/gp/advisoryservice

Para obtener más información acerca de las opciones de soporte técnico que están disponibles y cómo ponerse en contacto con Microsoft, visite el siguiente sitio Web de Microsoft: http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMSLa matriz de la propiedad Selected de lectura de los pasos en el siguiente ejemplo:

  1. Cierre y guarde los libros abiertos y, a continuación, abra un nuevo libro.
  2. En la Hoja1, escriba los valores siguientes:
    A1: Alpha
    A2: Bravo
    A3: Carlos
    A4: delta
    A5: eco
    A6: foxtrot
    A7: Golf
    Hotel A8:
  3. Inicie el Editor Visual Basic (ALT+F11).
  4. Si no está visible la ventana Propiedades, haga clic en Propiedades en el menú Ver (o presione F4).
  5. Si la ventana Explorador de proyectos no está visible, haga clic en Explorador de proyectos en el menú Ver.
  6. En el menú Insertar, haga clic en UserForm.
  7. Coloque un control ListBox en el formulario de usuario.
  8. Activar la ventana de propiedades (presione F4).
  9. Cambie la propiedad MultiSelect en el valor siguiente:
    1 fmMultiSelectMulti
  10. Haga clic en la propiedad OrigenDeLaFila (RowSource) y escriba Sheet1! A1:A8 .
  11. Coloque un control CommandButton en el formulario de usuario.
  12. Haga doble clic en el control CommandButton para mostrar la ventana de código para el formulario de usuario.
  13. En el módulo, escriba el siguiente código para CommandButton1 haga clic en evento:
           Sub CommandButton1_Click ()
    
              ' Loop through the items in the ListBox control.
              For x = 0 to ListBox1.ListCount - 1
    
                 ' If the item is selected...
                 If ListBox1.Selected(x) = True Then
    
                    '...display the Selected item.
                    MsgBox ListBox1.List(x)
    
                End If
    
             Next x
    
             ' Close the UserForm.
             Unload Me
    
          End Sub
    						
  14. Ejecutar el UserForm.
  15. Seleccione uno o más elementos en la lista.
  16. A continuación, haga clic en CommandButton1.
Tras hacer clic en CommandButton1, cada elemento seleccionado en el cuadro de lista se muestra en un cuadro de mensaje independiente. Después de un cuadro de mensaje mostrar todos los elementos seleccionados, automáticamente se cierra el formulario de usuario.

Para obtener información adicional, consulte en contacto con el siguiente artículo en Microsoft Knowledge Base:
161072XL97: No puede utilizar mouse para rellenar OrigenDeLaFila (RowSource) o ListFillRange

Referencias

Para obtener más información acerca de los cuadros de lista, haga clic en la ficha Índice en Visual Basic para aplicaciones, escriba el texto siguiente
cuadro de lista
y, a continuación, haga doble clic en el texto seleccionado para ir al tema "control ListBox".

Para obtener más información acerca de la propiedad Selected, haga clic en la ficha Índice en Visual Basic para aplicaciones, escriba el texto siguiente
seleccionado
y, a continuación, haga doble clic en el texto seleccionado para ir al tema "Propiedad seleccionados".

Propiedades

Id. de artículo: 161346 - Última revisión: jueves, 23 de noviembre de 2006 - Versión: 2.4
La información de este artículo se refiere a:
  • Microsoft Excel 97 Standard Edition
Palabras clave: 
kbmt kbdtacode kbhowto kbprogramming KB161346 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 161346
Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com