【问题标题】:filtering subforms in access过滤访问中的子表单
【发布时间】:2017-01-25 22:42:56
【问题描述】:

我在第 4 行 (Me.ConstructQuery) 上不断收到运行时错误 2465。我有一个嵌入了选项卡控件的表单;每个选项卡都将包含一个子表单。我希望能够从每个选项卡中的多个组合框查询每个子表单。

Option Compare Database

Public Sub cboLastName_AfterUpdate()
    Me.ConstructQuery
End Sub

Function ConstructQuery()
    Dim sFilter As String

    If Nz(Me.qryHardware.Form.cboUserID, "") <> "" Then
        sFilter = "UserID=" & Me.qryHardware.Form.cboUserID
    End If

    If Nz(Me.qryHardware.Form.cboLastName, "") <> "" Then
        sFilter = "LastName=" & Me.qryHardware.Form.cboLastName
    End If

    Me.qryHardware.Form.Filter = sFilter
    Me.qryHardware.Form.FilterOn = True


End Function

Private Sub cboBranch_Change()
    Dim strSQL As String

'populate userID comboBox
Me.cboUserID.ColumnCount = 2
Me.cboUserID.ColumnWidths = "0, 2cm"
strSQL = "SELECT ID, UserID  FROM Users WHERE BranchID=" &    Me.cboBranch.Value
Me.cboUserID.RowSource = strSQL

'populate last name comboBox
Me.cboLastName.ColumnCount = 1
Me.cboLastName.ColumnWidths = "2cm"
strSQL = "SELECT LastName FROM Users WHERE BranchID=" & Me.cboBranch.Value
Me.cboLastName.RowSource = strSQL

'poplulate first name comboBox
Me.cboFirstName.ColumnCount = 2
Me.cboFirstName.ColumnWidths = "0, 2cm"
strSQL = "SELECT ID, FirstName FROM Users WHERE BranchID=" & Me.cboBranch.Value
Me.cboFirstName.RowSource = strSQL

'populate account Status comboBox
Me.cboAccountStatus.ColumnCount = 2
Me.cboAccountStatus.ColumnWidths = "0, 2cm"
strSQL = "SELECT ID, AccountStatus FROM Users WHERE BranchID=" & Me.cboBranch.Value
Me.cboAccountStatus.RowSource = strSQL

End Sub

再次报告的抛出异常的行是 Me.ConstructQuery

非常感谢任何意见或建议。

提前致谢。

【问题讨论】:

  • 该行只需要 contstructquery。
  • 你能在调试模式下单步调试代码,看看哪里出错了吗?它返回第 4 行,因为那是调用 ConstructQuery 方法的行。但是,如果您单步执行代码,您可能会发现真正的罪魁祸首。

标签: ms-access vba


【解决方案1】:

直说:

Public Sub cboLastName_AfterUpdate()
    ConstructQuery
End Sub

【讨论】:

  • 谢谢,这让我越过了那一行,但是,在下一行出现错误,If Nz(Me.qryHardware.Form.cboUserID, "") ""
  • 尝试将其缩减为:Nz(Me!cboUserID.Value) &lt;&gt; ""
【解决方案2】:

谢谢,解决了!我还必须将字符串值包含在 ' ' 中,以便它正确搜索子表单。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-08
    • 2019-03-16
    • 2018-02-27
    • 1970-01-01
    相关资源
    最近更新 更多