以编程方式浏览连续表格的记录

Posted

技术标签:

【中文标题】以编程方式浏览连续表格的记录【英文标题】:Navigate programmatically through the records of a continuous form 【发布时间】:2019-03-05 08:12:36 【问题描述】:

我想在 Access 97 中浏览连续表单的记录。我不知道该怎么做。这是我尝试过的:

Me.RecordSetClone.MoveFirst 在逻辑上移动到第一条记录,但不在 UI 中。 CurrentRecord 属性也不会改变。

我无法设置CurrentRecord 属性,它是只读的。 Me.CurrentRecord = 1 报错。

DoCmd.GoToRecord Record:=acFirst好像没有效果。

以连续形式移动到第一条记录(以及下一条/上一条)的正确方法是什么?

【问题讨论】:

【参考方案1】:

使用 RecordsetClone 和 Form 的 Bookmark 属性。

警告:我很确定这一切在 Access 97 中都有效,但那是很久以前的事了。

Sub DemoNavigate()

    Dim RS As DAO.Recordset

    Set RS = Me.RecordsetClone
    RS.MoveFirst
    ' or
    RS.AbsolutePosition = 0

    ' Navigate in form
    Me.Bookmark = RS.Bookmark

    ' next record
    RS.MoveNext
    ' or
    RS.AbsolutePosition = 1

    Me.Bookmark = RS.Bookmark

    ' Move to searched record
    RS.FindFirst "someField = 42"
    Me.Bookmark = RS.Bookmark

End Sub

【讨论】:

谢谢,Bookmark 是缺失的部分。我会试一试的。

以上是关于以编程方式浏览连续表格的记录的主要内容,如果未能解决你的问题,请参考以下文章

Oracle SQL 查询对连续记录进行分组

在记录级别操作表单控件

使用 SQL 中的巧妙语句以连续方式将列值更改为多条记录

vue表格多选删除连续记录无法删除

通过连续形式访问循环

mysql/mariadb 中的数据库条目连续记录 - 直到今天