如何在列表框中选择最近添加的记录?

时间:2018-02-21 07:55:07

标签: vba access-vba

首先,关于在List Box中选择最后添加的记录,我的问题是。这可以通过以下方式实现:

Me.MyList.Selected(Me.MyList.ListCount - 1) = True

基本上,我有一个Form,其中List Box与表格有关。我们将此表tblMyData称为。在此表中,我有4个字段,我们称之为ID, FirstName, MiddleName, LastName

我有3个Text Box,对应于可输入的相应FirstName, MiddleName, and LastName字段值。

当表单加载时,List Box会在表中查询数据并正确显示它。

我已实现将用户输入数据添加到tblMyData表的功能:

Private Sub addRecord_Click()

    CurrentDB.Execute "INSERT INTO tblMyData (FirstName, MiddleName, LastName)" _
        & "VALUES ('" & Me.textBox_FirstName & "', '" & Me.textBox_MiddleName & "', '" & Me.textBox_LastName & "')"

    Me.MyList.Requery

End Sub

问题是tblMyDataFirstName排序,<{>}再排序LastName。将记录添加到表格后我拨打Me.MyList.RequeryMyListtblMyData中提取已经排序的数据,包括添加的记录

如果要在列表中滚动1000个记录,就很难知道添加记录的位置。

因此,是否可以突出显示包含最近添加记录的List Box中的行,以确保其已正确添加?

我想在Me.MyList.Requery之后调用它。

感谢。

1 个答案:

答案 0 :(得分:0)

不,没有。

但是为什么不将ListBox的设置为新输入的值?

那将立即显示该条目。类似的东西:

Dim Criteria As String

Criteria = _
    "FirstName = '" & Me.textBox_FirstName & "' And " & _
    "MiddleName = '" & Me.textBox_MiddleName & "' And " & _
    "LastName = '" & Me.textBox_LastName & "' And " & _
    "YesNoField = " & Me.checkbox_Something & ""

Me!MyList.Value = DLookup("ID", "tblMyData", Criteria)