0

这花了我将近 2 周的时间,我不知道还能做什么。我有一个主表单(UserSearch),它有一个子表单(TestUserSub)。这两种形式的关联表是 tblusers。很简单; 在主窗体 (UserSearch) 上,我有一个与 tbluser 中的字段相关联的组合框,例如 cmbid、cmbname、cmbdept 等。我想要的只是让用户从这些组合框中的任何一个中进行选择,并将相关字段显示在子表单(TestUserSub)中。我在几个 ComboBox 的 after update 事件中尝试了几种不同版本的代码,但子表单中没有发生任何事情,或者在其他情况下我收到错误消息。我尝试过的一个示例是过滤运行 SQL 命令

Private Sub cmbid_AfterUpdate()

    Dim strSQL As String

    If IsNull(Me.cmbaccess) Then
        Me.RecordSource = "tblusers"
    Else
        strSQL = "SELECT tblUsers.[Team Member_ID] FROM tblUsers " & _
             "WHERE (((tblUsers.[Team Member_ID])= " & [form_testusersub].[txtid2]))& ";"       
        Me.RecordSource = strSQL
    End If

End Sub

以上没有工作......有人可以帮我解决这个问题。我有一个我一直在使用的示例数据库,并且通过某种非常奇怪的方式,他们设法在不调用任何代码的情况下完成了同样的事情。这可能吗?

4

1 回答 1

0

我能够使用下面的示例找出代码

Private Sub yourcombobox_AfterUpdate()
    Dim LSQL  As String

    If IsNull(Me.yourcombobox.Value) Then
        Form_yoursubform.RecordSource = "tablename"
        Me.yoursubform.Requery
        requerysubform 'macro to requery the whole form
    Else
        LSQL = "select * from tablename"
        LSQL = LSQL & " where field= '" & yourcombobox & "'"

        Form_yoursubform.RecordSource = LSQL
        requerysubform 'macro to requery the whole form

    End If
End Sub

希望这可以帮助。

于 2009-06-25T19:57:36.070 回答