MultiSelect Listbox issues
我在将列表框变成多选列表框时遇到问题。我知道使列表框成为多选的代码是:
1 | [forms]![formname]![listboxname].multiselect=2 |
但是,当我在Private Sub Form_Load()中运行此命令时,会出现运行时错误\\'2448 \\',您无法为该对象分配值。
我想我不了解如何使列表框成为多选框,但是我很确定我了解如何在VBA中使用多选列表框。
任何有关如何使用以上代码将列表框实际更改为多选的帮助,将不胜感激。
从Microsoft Office帮助中的属性
This property can be set only in form Design view.
在"表单设计"中设置此属性,不要尝试在代码中更改它。
使用MultiSelect的一些示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | ' Retrieve all selected values Public Function ListBoxGetMultiSelect(ByVal rListBox As Access.ListBox) As String Dim v As Variant Dim vList As Variant vList ="" With rListBox For Each v In .ItemsSelected vList = vList & .Column(0, v) & vbCrLf Next End With ListBoxGetMultiSelect = vList End Function ' clear all selected values Public Sub ListBoxClearSelection(ByVal rListBox As Access.ListBox) Dim v As Variant With rListBox For Each v In .ItemsSelected .Selected(v) = False Next .Value = Null End With End Sub |
我找到了一种通过Vba代码设置Multiselect属性的方法:
1 2 3 4 5 6 | DoCmd.SetWarnings = False DoCmd.OpenForm myformname, acDesign Forms(myformname).SetFocus Forms(myformname).Controls(List3).MultiSelect = 0 DoCmd.Close acForm, myformname DoCmd.SetWarnings = True |