Vba DLOOKUP来自对当前记录集的查询
我正在尝试做一个dlookup,其中标准应为当前记录集,文本框编号(如text13)应更新为下一个文本框编号(如text14):Vba DLOOKUP来自对当前记录集的查询,vba,ms-access,Vba,Ms Access,我正在尝试做一个dlookup,其中标准应为当前记录集,文本框编号(如text13)应更新为下一个文本框编号(如text14): “统计主列表项目 Dim数据库作为DAO.Database Dim rs作为DAO.Recordset 将RSD计数为整数 Dim queryNameOrSQL作为字符串 queryNameOrSQL=“qryMasterList” Set db=CurrentDb Set rs=db.OpenRecordset(queryNameOrSQL) rsCount=rs.
“统计主列表项目
Dim数据库作为DAO.Database
Dim rs作为DAO.Recordset
将RSD计数为整数
Dim queryNameOrSQL作为字符串
queryNameOrSQL=“qryMasterList”
Set db=CurrentDb
Set rs=db.OpenRecordset(queryNameOrSQL)
rsCount=rs.RecordCount
i=1
textBoxIndex=13
在i时执行,无需计数记录-只需循环:
Const textBoxIndex As Long = 12
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim queryNameOrSQL As String
Dim recorditem As Long
queryNameOrSQL = "qryMasterList"
Set db = CurrentDb
Set rs = db.OpenRecordset(queryNameOrSQL)
While Not rs.EOF
recorditem = recorditem + 1
Me("Text" & CStr(textBoxIndex + recorditem) & "").Value = DLookup("[Item]", "MasterList", "WHERE RECORDSET = " & recorditem & "")
rs.MoveNext
Wend
rs.Close
您对该代码有什么问题?我注意到您在使用rs.MoveLast
之前已经完成了rs.RecordCount
。。。也许Access还没有统计您的所有记录(我猜,因为@HansUp说您还没有真正说明问题所在)。关于我推测的潜在问题,请参见(第4项)。
Const textBoxIndex As Long = 12
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim queryNameOrSQL As String
Dim recorditem As Long
queryNameOrSQL = "qryMasterList"
Set db = CurrentDb
Set rs = db.OpenRecordset(queryNameOrSQL)
While Not rs.EOF
recorditem = recorditem + 1
Me("Text" & CStr(textBoxIndex + recorditem) & "").Value = DLookup("[Item]", "MasterList", "WHERE RECORDSET = " & recorditem & "")
rs.MoveNext
Wend
rs.Close