【问题标题】:Combobox list items not appearing组合框列表项未出现
【发布时间】:2015-06-13 03:22:42
【问题描述】:

我是 VBA 的新手,所以对这个基本问题表示歉意。我到处寻找帮助,并尝试了几种不同的编码选项,但似乎没有一个对我有用。
我看到了这篇文章,但这是我尝试的第一件事: ComboBox,添加的项目在执行代码时未显示在列表中 我现在正在尝试这段代码:

    Private Sub UserForm1_Activate()
    Dim cName As Range
    Dim ws As Worksheet
    Set ws = Worksheets("PlayerListing")
    For Each cName In ws.Range("Player_Name")
    With Me.PlayerNameCombo
   .AddItem cName.Value
    End With
    Next cName

我希望组合框从 Range (Player_Name). 中的单独选项卡 (PlayerListing), 中提取数据 我尝试重新开始,删除所有内容,但这似乎也不起作用。 任何帮助将不胜感激!

【问题讨论】:

    标签: excel combobox vba


    【解决方案1】:

    它对我有用。您是否更改了用户表单的名称?如果在调用 Userform1 时设置了 Activate 事件,然后将名称更改为 ufPlayerNames,则事件过程将无法正确格式化并且不会被识别为事件。在程序的某处放置一个断点——如果它在中断处停止,那就没关系。如果没有,请从代码窗格顶部的左侧下拉列表中选择 UserForm,从右侧下拉列表中选择激活,然后将代码剪切并粘贴到新存根中。

    也许 Player_Name 没有指向你认为的范围。在即时窗口中,键入

    ?Sheets("PlayerListing").Range("Player_Name").Address
    

    并确保它是正确的。例如,如果您在 Player_Name 的顶部有一堆空白行,它可能看起来没有填充组合框,但实际上是用很多空白行填充它。

    【讨论】:

    • 非常感谢!现在可以了。这是 Userform1 与 Userform 的问题。另外,感谢您提供有关范围的信息。很有用,我会经常用的!再次感谢。
    猜你喜欢
    • 2016-03-22
    • 1970-01-01
    • 1970-01-01
    • 2013-08-09
    • 1970-01-01
    • 1970-01-01
    • 2014-10-18
    • 2017-05-27
    • 1970-01-01
    相关资源
    最近更新 更多