【发布时间】:2023-02-17 05:31:40
【问题描述】:
我在工作表中有一个名字列表。我将这些名称设置为 useform 上组合框的 RowSource。
涉及两个组合框。一个开始满,另一个开始空。
我希望当我从第一个(完整)组合框中单击一个名称时,将所述名称添加到另一个组合框中,并从原始组合框中删除(最终反之亦然)。
我无法删除任何内容除去项目.
我去了'菜单.ListeAjoutAg.ListIndex'获取我当前选择的索引的方法('菜单' 是用户窗体和 'ListeAjoutAg' 是组合框),但它不起作用。
尝试通过我快速创建的变量输入,'b',但结果相同。没有索引号有效。我检查了一下,只提供正确和/或在我的列表范围内(大约 45 个名称)的函数整数(0、1、3、4 ...)。
Private Sub ListeAjoutAg_Change()
a = Menu.ListeAjoutAg.Text
b = Menu.ListeAjoutAg.ListIndex
Menu.ListeRetirer.AddItem (a) ' goes fine till there
Menu.ListeAjoutAg.RemoveItem (b) 'and here it goes wrong
Menu.ListeRetirer.Enabled = True
Menu.ListeRetirer.Visible = True
End Sub
【问题讨论】:
-
如果为列表框设置行源,则既不能添加也不能删除项目。您将需要手动填充列表框(只需遍历行源的所有单元格并使用
AddItem)
标签: excel vba combobox userform