访问VBA - 添加具有多个列的行

时间:2015-11-06 12:18:56

标签: vba ms-access access-vba

我正在尝试使用VBA将多列项添加到ListBox中。虽然不能为我的生活做出如何做到这一点。互联网上似乎有多种方式,但没有一种方式适合我。

以下是一个例子:

Sub AddMultipleColumn()
'Add multiple Columns to a listbox
ListBox1.Clear 'Make sure the Listbox is empty
ListBox1.ColumnCount = 3 'Set the column Amount
'Fill the Listbox
ListBox1.AddItem "Row Number 1" 'Additem creates a new row
ListBox1.List(0, 1) = "Column Number 2" 'List(x,y) X is the row number, Y the column number
ListBox1.List(0, 2) = "Column Number 3"
ListBox1.List(0, 3) = "Column Number 4"
End Sub

http://visiblevisual.com/jupgrade/index.php/general-net/77-multiple-columns

这是我的代码(已经配置为有三列):

lst_TemplateEditorList.AddItem "1"
lst_TemplateEditorList.List(0, 0) = "1"
lst_TemplateEditorList.List(0, 1) = "2"
lst_TemplateEditorList.List(0, 2) = "3"

但是我在“lst_TemplateEditorList.List”上收到编译错误“找不到方法或数据成员”,因为没有List方法/属性。

我找到了一些使用“Column”而不是“List”的东西,但是这不起作用,还有一些没有“AddItem”的参数导致错误:

lst_TemplateEditorList.AddItem
lst_TemplateEditorList.Column(0, 0) = "1"
lst_TemplateEditorList.Column(0, 1) = "2"
lst_TemplateEditorList.Column(0, 2) = "3"

但大多数似乎都认为第一个应该有效,例如:

Adding items in a Listbox with multiple columns

vba listbox multicolumn add

看起来应该这么简单......但我很难过。谁能告诉我我做错了什么?

由于

1 个答案:

答案 0 :(得分:1)

Access中的列表框与其他Office程序中的列表框具有不同的属性/方法集(它们属于" Microsoft Forms"对象模型)

请参阅https://msdn.microsoft.com/en-us/library/office/ff195480.aspx

在Access中,您只需添加多列数据,就像在RowSource RowSourceType = Value List属性中一样,以分号分隔。

With Me.lst_TemplateEditorList
    .AddItem "1;2;3"   ' first row
    .AddItem "4;5;6"   ' second row
End With

修改

Access 2010开发人员帮助增加了混乱:如果您搜索List,则会获得表单 -Listbox及其属性,包括.List。你必须仔细观察你已离开Access领域并进入Microsoft Forms领域。德语访问在这里,但你明白了。

enter image description here