想要使用下拉搜索框从 Access 数据库中搜索值

Posted

技术标签:

【中文标题】想要使用下拉搜索框从 Access 数据库中搜索值【英文标题】:Want to Search Value From Access Data Base Using Dropdown search box 【发布时间】:2013-10-26 12:13:42 【问题描述】:

我已经创建了我的数据库,我的数据库有学生姓名、出生日期、国籍、学校、部门、手机号码、身份证号码等标签。

我知道如何使用一个“文本框”搜索选项从该数据库中搜索值。我可以创建一个文本框,也可以为其创建查询,并可以从数据库中找出结果。

但在搜索表单中,我想使用一个下拉搜索框。就像在“国籍”选项卡中一样,所有国家都将出现在下拉列表中,如果我从下拉列表中选择一个国家,我的结果将显示该国家的所有学生信息。

Microsoft 访问专家需要您的帮助。

【问题讨论】:

***.com/questions/7680171/… 和 ***.com/questions/3423442/… 应该会提供您的答案。取决于您使用的是组合框还是列表框 @TKEyi60 我认为您提到的上述两个链接对我没有帮助。我没有任何方法可以通过使用组合框来显示我的值在结果中。 对于保管箱,您需要组合框或列表框。然后,您可以使用表格或输入值来填充它。要获得选定的值,请使用Me.Combobox.Column(n)。你是说你使用不同的方法吗?或者你正在尝试它们但它不起作用? 【参考方案1】:

您说,'我的结果将显示来自该国家/地区的所有学生信息'。我不知道这是否意味着修改表单数据源的结果或根据第一个选择更改辅助组合框。所以,下面我展示了一种简化的方法。

Private Sub cboCountry_AfterUpdate()
  If (vba.strings.len(cboCountry.Value & "")<>0) Then
    'To change the RowSource of another combo box do the following:
    cboStudents.RowSource = "SELECT * FROM Students WHERE CountryID = " & cboCountry.Column(0)

    'To Filter the forms data source perform the following:
    Me.Filter = "CountryID = " & cboCountry.Column(0)
  Else
    Me.Filter = ""
    cboStudents.RowSource = "SELECT * FROM Students"
  End If

  Me.Refresh
End Sub

【讨论】:

以上是关于想要使用下拉搜索框从 Access 数据库中搜索值的主要内容,如果未能解决你的问题,请参考以下文章

使用 Bootstrap Selectpicker 的搜索框下拉菜单不起作用

尝试从 Access 数据库中搜索时出现 C#OleDb 异常“没有为一个或多个必需参数提供值”[关闭]

MS Access 07-10,希望能够将字段放入列表/组合框中

制作 PHP 下拉框从 SQL 数据库中提取数据

在子表单中搜索值 (vba Access 2013)

动态添加行中的可搜索下拉值