如果您无法找到完整的示例,那么您需要自己一步一步地完成它。这是控件的MSDN链接ListBox
。页面底部有指向此控件的各种方法和属性的链接。
本质上,单击按钮(您的箭头)会触发 Click 事件;在这种情况下,您可能需要循环查找该Selected
项目;如果列表框是多选的,那么您可以检查ItemsSelected
集合;然后您将使用AddItem
andRemoveItem
方法将它们从右到左或从左到右移动。
我目前不记得字段列表选项是否绑定到表,或者它是否只是在加载表单时填充列表一次。如果它已绑定,那么您将需要使用 Value List 选项并使用 VBA 检索所有字段名称,并使用它们来设置RowSource
(您可能已经这样做了)。
在任何一种情况下(字段或值列表)我都不相信列表可以保持自动排序(与 VB.NET 不同)。您可能需要将 RowSource 拆分为(动态)数组,找到一个简单的排序例程来对数组进行排序,并将排序后的项目重新分配为RowSource
.
另一种方法是创建两个临时表并使用 ADO(或 DAO)在它们之间插入和删除行,然后每次使用 SELECT 语句重新填充列表。这样做的好处是 SELECT 可以包含一个 ORDER BY 子句来每次对列表进行排序。但是,它可能需要更多的努力(维护和删除临时表)。
但是,您可能希望继续搜索,因为我怀疑某处有一个示例。祝你好运。