

当记录很多的时候,我们就需要对记录进行分页显示了。这样的好处是,保持界面的美观,不会破坏窗体的结构;数据查看更加清晰明了,方便管理。 在Access中,我们习惯用子窗体来显示记录。他并不像.net 那样,可以用控件来绑定数据。然后设置对每条记录的控制,只需要把勾打上,就能实现分页等功能。而我们在Access中设置数据分页就需要一定的代码了。 下面的示例就是通过DAO来都子窗体的数据进行分页查看,能上下翻页查看,设置每一页的显示多少条记录,还能跳转到特定的页码。 关键代码: Private Function ChangeRstPage(frm As Form, rst As DAO.Recordset, sFldID As String, iPageRecCount As Integer, iCurrentPage As Integer) ' 将按页码筛选后的记录集作为窗体记录集 Dim iStartNumber As Integer Dim lngStartID As Long Dim lngLastID As Long iStartNumber = (iCurrentPage - 1) * iPageRecCount With rst If .RecordCount > 0 Then .MoveFirst .Move iStartNumber If .EOF Then Exit Function lngStartID = .Fields(sFldID) .Move iPageRecCount - 1 If .EOF Then .MoveLast lngLastID = .Fields(sFldID) .Filter = sFldID & " Between " & lngStartID & " And " & lngLastID End If Set frm.Recordset = .OpenRecordset End With End Function