ListBox 对象 (Access)

此对象对应于一个列表框控件。 列表框控件显示值或替代方法的列表。

备注

控制 工具
列表框控件 列表框工具

在许多情况下,从列表中选择值比记住要键入的值更快捷。 选项列表还有助于确保输入到字段中的值是正确。

列表框中的列表由数据行构成。 行可以包含一个或多个列,这些列可以随标题一起显示,也可以不显示标题,如下图所示。

多列列表框

如果多列列表框是绑定的,Microsoft Access 存储其中一列的值。

使用未绑定列表框存储可用于另一个控件的值。 例如,可以使用未绑定列表框来限制另一个列表框或者自定义对话框中的值。 还可以使用未绑定的列表框根据在列表框中选择的值查找记录。

如果窗体上没有空间来显示列表框,或者如果想既能键入新值又能从列表中选取值,则请使用组合框而不是列表框。

示例

此示例演示如何在文本框中键入内容时筛选列表框的内容。

在此示例中,名为 ColorID 的列表框显示存储在 Colors 表中的颜色 列表。 在“ FilterBy ”文本框中键入时,将动态筛选 ColorID 中的项。

为此,请使用文本框的 Change 事件生成一个 SQL 语句,该语句将用作列表框的新 RowSource。

Private Sub FilterBy_Change()

    Dim sql As String
    
    'This will match any entry in the list that begins with what the user 
    'has typed in the FilterBy control
    sql = "SELECT ColorID, ColorName FROM Colors WHERE ColorName Like '" & Me.FilterBy.Text & "*' ORDER BY ColorName"
    
    'If you want to match any part of the string then add wildcard (*) before
    'the FilterBy.Text, too:
    'sql = "SELECT ColorID, ColorName FROM Colors WHERE ColorName Like '*" & Me.FilterBy.Text & "*' ORDER BY ColorName"
    
    Me.ColorID.RowSource = sql
    
End Sub

事件

方法

属性

另请参阅

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。