Pregunta

¿Cómo agrego un botón de combinación / desplegable en el cargo (ver más abajo). Preferiblemente con el código.

text alt

Actualización:. Si se ayuda a cualquiera, no se necesita código

¿Fue útil?

Solución

Puede hacerlo, en base a los siguientes controles ActiveX:

  • Microsoft ImageList Control, versión 6
  • Microsoft ImageComboBox Control, versión 6

manualmente, selecciona "Más controles ..." en el [Cuadro de controles] barra de menú y haga doble clic en los controles mencionados para conseguir que en su hoja. Posicionar el cuadro combinado donde quiera que sea, e ignorar la posición del ImageList, es visible sólo en modo de diseño. Por ahora se han nombrado dos contros incrustados

  • ImageList1
  • ImageCombo1

La inserción de los dos componentes también crea una referencia a ... \ system32 \ MSCOMCTL32.OCX.

A continuación,

  1. añadir manualmente iconos (GIF, BMP, etc.) a la lista de imágenes
  2. ajustar manualmente la propiedad ImageList del Combo a "ImageList1"
  3. ajustar manualmente la propiedad de carga automática del Combo a True

Por ahora usted tiene un combo con el error, pero no hay iconos.

A continuación, se ejecuta el código

Sub FillCombo()
Dim SH As Worksheet, OO As OLEObjects, Idx As Integer

    Set SH = ActiveSheet
    Set OO = SH.OLEObjects


    With OO("ImageCombo1").Object
        .ComboItems.Clear
        For Idx = 1 To OO("ImageList1").Object.ListImages.Count
            .ComboItems.Add , , , Idx
        Next Idx
    End With

End Sub

He tratado de crear los objetos de VBA, pero el ImageCombo parece comportarse diferente cuando se creó como

Set SH = ActiveSheet
Set OO = SH.OLEObjects
OO.Add "MSComctlLib.ImageComboCtl.2"
' .... etc ....

Se crea el combo, pero la flecha de la derecha no se muestra, no importa lo que hago, acabase espectáculos depurador que todos los elementos de ListView están perfectamente unidas. Un montón de colegas parecen tener problemas con eso ActiveX, hay un montón de publicación en la red.

aquí

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top