在主窗体上搜索记录的子窗体
Subform to search record on main form
我有一个像这样的子表单:
当我单击 'select' 按钮时,我希望主窗体上的记录导航到适当的记录(拥有相同员工 ID 的记录)。
到目前为止我尝试的是当按下按钮时 运行 以下 vba:
Private Sub Command6_Click()
Dim rs As Object
Dim strLinkValue As String
strLinkValue = Forms![navigation form]![NavigationSubform]![teacher search qry subform]![Staff ID].Value
Set rs = Forms![navigation form]![NavigationSubform]![teacher search qry subform].Form.RecordsetClone
rs.FindFirst "[Staff ID] = '" & strLinkValue & "'"
Forms![navigation form]![NavigationSubform].Bookmark = rs.Bookmark
End Sub
但是当我这样做时,我得到 运行 时间错误 438(对象不支持此 属性 或方法)。
有什么想法吗?我觉得我把事情复杂化了。
您首先在这一行收到错误 438("Object doesn't support this property or method.")...
Set rs = Forms![navigation form]![NavigationSubform].Recordset.Clone
从 Recordset.Clone
更改为 Form.RecordsetClone
修复了错误(在该行)。
不幸的是,当您尝试在此行设置 Bookmark
时再次遇到错误 438 ...
Forms![navigation form]![NavigationSubform].Bookmark = rs.Bookmark
当时出错的原因是因为[NavigationSubform]
是子窗体控件,控件没有Bookmark
属性。您需要在该控件中包含的 Form
上设置 Bookmark
。
这段代码可以满足您的要求。我使用您的数据库副本在 Access 2010 中对其进行了测试。
Dim rs As DAO.Recordset
Dim strLinkValue As String
strLinkValue = Me![Staff ID].Value
With Me.Parent.Form
Set rs = .RecordsetClone
rs.FindFirst "[Staff ID] = '" & strLinkValue & "'"
.Bookmark = rs.Bookmark
End With
我有一个像这样的子表单:
当我单击 'select' 按钮时,我希望主窗体上的记录导航到适当的记录(拥有相同员工 ID 的记录)。
到目前为止我尝试的是当按下按钮时 运行 以下 vba:
Private Sub Command6_Click()
Dim rs As Object
Dim strLinkValue As String
strLinkValue = Forms![navigation form]![NavigationSubform]![teacher search qry subform]![Staff ID].Value
Set rs = Forms![navigation form]![NavigationSubform]![teacher search qry subform].Form.RecordsetClone
rs.FindFirst "[Staff ID] = '" & strLinkValue & "'"
Forms![navigation form]![NavigationSubform].Bookmark = rs.Bookmark
End Sub
但是当我这样做时,我得到 运行 时间错误 438(对象不支持此 属性 或方法)。
有什么想法吗?我觉得我把事情复杂化了。
您首先在这一行收到错误 438("Object doesn't support this property or method.")...
Set rs = Forms![navigation form]![NavigationSubform].Recordset.Clone
从 Recordset.Clone
更改为 Form.RecordsetClone
修复了错误(在该行)。
不幸的是,当您尝试在此行设置 Bookmark
时再次遇到错误 438 ...
Forms![navigation form]![NavigationSubform].Bookmark = rs.Bookmark
当时出错的原因是因为[NavigationSubform]
是子窗体控件,控件没有Bookmark
属性。您需要在该控件中包含的 Form
上设置 Bookmark
。
这段代码可以满足您的要求。我使用您的数据库副本在 Access 2010 中对其进行了测试。
Dim rs As DAO.Recordset
Dim strLinkValue As String
strLinkValue = Me![Staff ID].Value
With Me.Parent.Form
Set rs = .RecordsetClone
rs.FindFirst "[Staff ID] = '" & strLinkValue & "'"
.Bookmark = rs.Bookmark
End With