Ms office office中的组合按钮/下拉列表

Ms office office中的组合按钮/下拉列表,ms-office,office-2003,Ms Office,Office 2003,如何在office中添加组合按钮/下拉列表(见下文)。最好有代码 更新:如果有帮助,则不需要代码。您可以基于以下ActiveX控件执行此操作: Microsoft ImageList控件,版本6 Microsoft ImageComboBox控件,版本6 手动从[Control Toolbox]菜单栏中选择“More Controls…”并双击所述控件以将其显示在工作表中。将组合框放置在您希望的位置,忽略ImageList的位置,它仅在设计模式下可见。现在您已经有两个名为 图像列表1 图

如何在office中添加组合按钮/下拉列表(见下文)。最好有代码


更新:如果有帮助,则不需要代码。

您可以基于以下ActiveX控件执行此操作:

  • Microsoft ImageList控件,版本6
  • Microsoft ImageComboBox控件,版本6
手动从[Control Toolbox]菜单栏中选择“More Controls…”并双击所述控件以将其显示在工作表中。将组合框放置在您希望的位置,忽略ImageList的位置,它仅在设计模式下可见。现在您已经有两个名为

  • 图像列表1
  • 图像组合1
插入这两个组件还会创建对…\system32\MSCOMCTL32.OCX的引用

那你呢

  • 手动将图标(GIF、BMP等)添加到图像列表中
  • 手动将组合的ImageList属性设置为“ImageList1”
  • 手动将组合的自动加载属性设置为True
  • 到现在为止,您已经有了一个带有错误的组合,但没有图标

    然后执行此代码

    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
    
    我尝试过用VBA创建对象,但是ImageCombo在创建为

    Set SH = ActiveSheet
    Set OO = SH.OLEObjects
    OO.Add "MSComctlLib.ImageComboCtl.2"
    ' .... etc ....
    
    组合被创建,但无论我做什么,下拉箭头都不会显示,尽管调试程序显示所有ListView元素都被整齐地附加。很多同事似乎对ActiveX有问题,网上有很多帖子

    进一步阅读