vba listbox multicolumn add

时间:2012-06-26 18:42:55

标签: vba

  

可能重复:
  Adding items in a Listbox with multiple columns

使用MFC VC ++,有两个控件,ListBoxListCtrl。但是对于VBA,似乎我们只有ListBox

我想创建一个包含2列的列表框(Company_ID,Company_Name)。

以下是我的尝试:

  1. 我创建了lstbox(控件类型ListBox)
  2. 行来源类型=值列表
  3. 我从两个编辑框中获取用户的价值,当用户点击“添加”时,它应该添加到列表框中,包含2列。
  4. 在VBA代码例程中,我添加了以下行:

    lstbox.ColumnCount = 2
    lstbox.AddItem (Company_ID)
    

    以下代码无效,似乎与添加列值有关:

    lstbox.Column(1,lstbox.ListCount - 1) = Company_name
    

    这会出错:

      

    运行时错误'424'对象需要。

    任何人都可以帮助将vba代码添加到多列列表框中。

1 个答案:

答案 0 :(得分:30)

简化示例(带计数器):

With Me.lstbox
    .ColumnCount = 2
    .ColumnWidths = "60;60"
    .AddItem
    .List(i, 0) = Company_ID
    .List(i, 1) = Company_name 
    i = i + 1

end with

确保使用 0 启动计数器,而不是1来填充列表框。