1

我有一个带有子表单的访问表单。子表单有一个数据表。主窗体有下拉框和按钮,可将记录添加到子窗体。这一切都很好(VBA代码)。现在我想突出显示最近插入的记录,就好像我单击了行标题一样。

我该怎么做呢?主窗体的组合框仍应在 tpoint 设置为正确的记录,那么如何突出显示子窗体记录?

4

1 回答 1

2

使您的目标记录成为子表单的当前记录。然后使用RunCommand“选择”它......这也将突出显示记录。

DoCmd.RunCommand acCmdSelectRecord

似乎您的问题正在演变为“如何使最后添加的记录成为当前记录”。

如果最后添加的记录仍然是当前记录,那么您已经在那里,所以没问题。

如果用户在添加最后一条记录后导航到另一条记录,则至少有两种方法可以返回到该记录。

  1. DoCmd.GoToRecord
  2. 在记录集克隆上使用查找方法。

选择最适合您情况的方法。如果您的组合框的绑定值是最后添加的行的数字主键,您可以尝试第二个建议,方法是用您正在使用的实际名称替换pkey_field,YourComboNameHere和。SubformControl

Private Sub FindLastRecordAdded()
    Dim rst As DAO.Recordset
    Dim strCriteria As String

    strCriteria = "[pkey_field] =" & Me.YourComboNameHere

    Set rst = Me.SubformControl.Form.RecordsetClone
    rst.FindFirst strCriteria
    If rst.NoMatch Then
        MsgBox "Oops. This shouldn't happen.", vbInformation
    Else
        Me.SubformControl.Form.Bookmark = rst.Bookmark
    End If

    Set rst = Nothing
End Sub
于 2012-10-12T18:08:28.967 回答