在 Access 的列表框中添加/替换项目 VBA

Adding / Replacing Items in a Listbox in Access VBA

我一直在网上浏览但没有成功,但真的可以使用帮助。 我有一个设置为“值列表”的未绑定列表框。我想要完成的是将项目添加到列表框。我在多列中添加项目没有问题,但是...

获得完整列表(大约 10 个项目)后,我希望能够返回列表顶部并用新项目替换添加的项目....而不会丢失旧项目。 ..基本上一次更换一个。

所以:我拥有的是....(效果很好。每隔几分钟就会添加一个新项目。)

Me.MyListBox.AddItem MyCol1 & ";" MyCol2

现在,在列表达到大约 10 个项目后,我想转到(选择任意数字)列表中的第 3 个项目并将其替换。我以为它看起来像这样......(但它不起作用)

Me.MyListBox.AddItem(MyCol1 & ";" MyCol2, [2])

我只是需要一点帮助来理解这一行的语法。 在这方面的一点指导将非常有帮助。

终于明白了。可能有比这更好的答案,但这对我有用。

语法是:

Me.MyListBox.AddItem Item:=MyCol1 & ";" MyCol2, Index:=x

x 是您要将项目添加到列表框的任何位置。请记住 0 是列表框的第一行。

ListIndex从0开始,要替换liste item #3,我们可以这样做:

  dim iIndextItem = 3
  iIndextItem = 3 - 1
  
  Me.MyListBox.RemoveItem iIndextItem 
  Me.MyListBox.AddItem "new value 3", iIndextItem 

这种替换方法将使列表保持相同的长度(Me.MyListBox.ListCount)。