【问题标题】:Command button to open report subject to criteria selected in combobox根据组合框中选择的条件打开报表的命令按钮
【发布时间】:2013-11-25 04:26:54
【问题描述】:

我有一个带有 2 个组合框的 [主管] 表单:主管、职位。

我有一份员工报告,里面有各种信息,其中包括主管和职位。我想制作一个命令按钮,根据组合框中选择的主管和职位打开报告。这应该和 WHERE 语句中的限制一样简单,对吗?我用表达式生成器说:

Where Condition = [position] Like [Forms]![Supervisors]![PositionCombo]
                   AND [sup] Like [Forms]![Supervisors]![SupervisorCombo]

然而,当我单击按钮时,我得到“Microsoft Access 数据库引擎无法将 '[Forms]![Supervisors]![PositionCombo]' 识别为有效的字段名称或表达式。”如何告诉 Access 使用组合框值作为限制条件?

我不知道 VBA,但我确实打算学习。如果可能,我想在不需要 VBA 的情况下完成此操作。

【问题讨论】:

    标签: forms ms-access combobox vba ms-access-2010


    【解决方案1】:

    使用OpenReport MethodWhereCondition 选项根据您的组合框值过滤报表的记录源。

    Dim strWhereCondition As String
    strWhereCondition = "[position] = " & Me.[PositionCombo].Value _
        & " AND [sup] = " & Me.[SupervisorCombo].Value
    Debug.Print strWhereCondition
    DoCmd.OpenReport "Your Report", View:=acViewPreview, _
        WhereCondition:=strWhereCondition 
    

    我假设[position][sup] 是数字数据类型。如果它们实际上是文本,请引用 strWhereCondition 中的值。

    strWhereCondition = "[position] = '" & Me.[PositionCombo].Value _
        & "' AND [sup] = '" & Me.[SupervisorCombo].Value & "'"
    

    【讨论】:

      猜你喜欢
      • 2016-10-08
      • 1970-01-01
      • 2015-09-15
      • 2017-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-18
      相关资源
      最近更新 更多