Office中国论坛/Access中国论坛

标题: 如何让订单表显示当前记录是在数据表中的第几条记录。 [打印本页]

作者: yzc2011    时间: 2017-3-30 20:11
标题: 如何让订单表显示当前记录是在数据表中的第几条记录。
原来是用ID号显示的,但因为有时新建记录中途取消,造成ID号跳过。如第4条的记录ID号可能是到第7号。所以用了=[CurrentRecord]来显示当前记录。
但是在订单查询中双击查找筛选后,当数据只有一条时就只会显示是1。不是第6条记录。如图所示,图1是订单表所示的第6条记录,图2是订单查询双击所显示的同一条记录。但是所显示的是1。想做到窗体显示的记录数是表中对应的记录数。即第6条记录就是第6条,会一直显示为6。




作者: Henry D. Sy    时间: 2017-3-31 12:38
  1. Private Sub Form_Current()
  2.     Dim rs As DAO.Recordset
  3.     Dim i As Long
  4.     Set rs = CurrentDb.OpenRecordset("订单表", dbOpenSnapshot).Clone
  5.     Do While Not rs.EOF
  6.         If rs.Fields("订单编号") = Me.订单编号 Then
  7.             i = rs.AbsolutePosition + 1
  8.             Exit Do
  9.         End If
  10.         rs.MoveNext
  11.     Loop
  12.     Me.记录条数 = i
  13.     rs.Close
  14.     Set rs = Nothing
  15. End Sub
复制代码

作者: Henry D. Sy    时间: 2017-3-31 12:40
不用副本也行
作者: fan0217    时间: 2017-3-31 13:05
本帖最后由 fan0217 于 2017-3-31 13:06 编辑

数据在数据表中没有顺序,只是看你用什么字段进行什么排序
作者: yzc2011    时间: 2017-3-31 14:02
谢谢Henry D. Sy  




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3