搜索子表单字段 - MS Access

时间:2015-04-27 04:00:39

标签: forms ms-access subform

假设我在此图像中显示Mainform和Subform。 现在,当我打开时,我试图为SubformID = 6进行搜索 MainformID = 2,如果我发现SubformID = 6,那么我希望转到那个特定的MainformID(例如,MaincodeID = 1)。

Download Sample Project

使用查找和替换它无法完成。

请建议我正确的方法 enter image description here 我还阅读了this thread,但无法获得它。

我正在为此寻找一些好的解决方案。

2 个答案:

答案 0 :(得分:2)

您可以使用DLookup:

Dim SearchedId As Long
SearchedId = 6
MainformId = DLookup("MainformID", "Subform", "SubformID = " & SearchedId & "")

然后你可以使用DoCmd.SearchForRecord在MainformId上定位mainform。

答案 1 :(得分:1)

为了更好地充实gustav的答案,我会在表单中添加一个搜索字段和按钮,以便您可以使用某些控件移动到记录中。

enter image description here

Here's将您的文件更改回来;看看我添加的搜索按钮的点击事件,其中包含以下代码(基本上是gustav已经提供的):

Private Sub cmdSearch_Click()

    Dim MainFK As Long

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

    DoCmd.SearchForRecord acDataForm, "MainForm", acFirst, "MainformID=" & MainFK

End Sub

感谢您提供截图 - 明确了您的目标:)