Ms access 如何在MS Access 2010中使用VBA选择多值组合框的值?

Ms access 如何在MS Access 2010中使用VBA选择多值组合框的值?,ms-access,combobox,vba,ms-access-2010,multivalue,Ms Access,Combobox,Vba,Ms Access 2010,Multivalue,我有一个MS Access 2010表单,其中有一个“公司”组合框和一个“地址”多值组合框 选择公司后,AfterUpdate事件会重新查询地址组合框,以便只列出与公司相关的地址。这是完美的;但是,大多数公司只有一个地址值,因此如果只有一个地址,我希望自动选择该地址 我花了很多时间尝试各种方法,例如: AddressCombo.Value = AddressCombo.ItemData(0) 这会导致“运行时错误3032”,而下面的代码似乎没有任何作用 AddressCombo.Selecte

我有一个MS Access 2010表单,其中有一个“公司”组合框和一个“地址”多值组合框

选择公司后,AfterUpdate事件会重新查询地址组合框,以便只列出与公司相关的地址。这是完美的;但是,大多数公司只有一个地址值,因此如果只有一个地址,我希望自动选择该地址

我花了很多时间尝试各种方法,例如:

AddressCombo.Value = AddressCombo.ItemData(0)
这会导致“运行时错误3032”,而下面的代码似乎没有任何作用

AddressCombo.Selected(0) = True
我知道使用列表框更好,但我想知道是否可以使用多值组合框来实现

对于那些不了解多值组合框(MSA 2007+)的人,下面是一段视频:


我给一个比我聪明得多的朋友打了电话。他说,在他的VB经验中,有时在控件被激活之前,您无法访问控件的属性

他建议在尝试设置选项之前,使用.Dropdown“激活”组合框

Me!AddressCombo.SetFocus
Me!AddressCombo.Dropdown
Me!AddressCombo.Selected(0) = True
Me!AddressCombo.Selected(1) = False
Me!AddressCombo.Selected(2) = True

他完全正确,代码使我能够选择所需的选项。

您使用什么代码来填充地址组合?注意,MS Access不支持多值组合框。。。注意,新列表从另一个称为多值查找字段的数据库组件获取数据。在创建多值列表之前,您的一个数据库表中必须有一个多值查找字段。除非您使用Sharepoint,否则请不要使用多值IELD。我想知道你指的是列表框吗?你可以从这里开始,我承认自己是一个完全的新手。这篇文章说,如果理解了查找表,并且没有误用,它会很有用。