在使用导航窗体时访问DoCmd.SearchForRecord中的Referancing表单 - 访问 [英] Referancing form in DoCmd.SearchForRecord when using Navigation form - Access

查看:482
本文介绍了在使用导航窗体时访问DoCmd.SearchForRecord中的Referancing表单 - 访问的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有 Mainform 文本框按钮搜索子窗体记录
当我直接打开 Mainform 并搜索愿望记录
时,但是当我在 Navigaition 窗体中打开表单时,它会给我提供错误信息。 $ b


I have a Mainform with textbox and button to search subform record it works fine when i directly open Mainform and searching desire record but when i open my form in Navigaition form it gives me error.

Download My Access Project What i have tried.

Below is my code:

Private Sub cmdSearch_Click()
    Dim MainFK As Long
    MainFK = DLookup("MainformID", "Subform", "SubformID =" & Me.txtSearch)
    Debug.Print MainFK    
    DoCmd.SearchForRecord acDataForm, "Mainform", acFirst, "MainformID=" &MainFK
End Sub

See Screen Shot:

解决方案

I think DoCmd.SearchForRecord is tricky on subforms. Try this instead:

Private Sub cmdSearch_Click()

    Dim MainFK As Long
    Dim rs As DAO.Recordset
    Dim WhereStr As String

    MainFK = DLookup("MainformID", "Subform", "SubformID =" & Me.txtSearch)

    WhereStr = "MainformID=" & MainFK

    With Me.Form

        Set rs = .RecordsetClone
        rs.FindFirst WhereStr

        If _
            rs.NoMatch _
        Then

            MsgBox "Subform record not match to mainform record"

        Else

            .Bookmark = rs.Bookmark

        End If

    End With

End Sub

Here's your file back: https://drive.google.com/file/d/0B-J5B7nFljZiLVJ1dEtoTVQwcXc/view?usp=sharing

这篇关于在使用导航窗体时访问DoCmd.SearchForRecord中的Referancing表单 - 访问的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆