代码之家  ›  专栏  ›  技术社区  ›  Absinthe

在不使用activesheet的情况下参考activex列表框

  •  0
  • Absinthe  · 技术社区  · 7 年前

    我在工作表上有一个名为“lbCCGs”的ActiveX列表框。

    此代码编译:

    Debug.Print ActiveSheet.lbCCGs.ListCount
    

    但该代码不:

    Dim ws as worksheet
    Set ws = Sheets("A&E")
    Debug.Print ws.lbCCGs.ListCount
    

    如何在不使用ActiveSheet的情况下声明和引用ActiveX列表框?我已经尝试将其声明为OLEObject和Object,但是像ListCount这样的属性不可用。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Shai Rado    7 年前

    使用Active-X ListBox 请尝试以下代码:

    Dim ws As Worksheet
    Dim lbcLB As OLEObject
    
    Set ws = Sheets("A&E")
    
    ' Set the ActiveX List-Box object to a variable
    Set lbcLB = ws.OLEObjects("lbCCGs")
    
    Debug.Print lbcLB.Object.ListCount