【发布时间】:2014-02-03 21:30:04
【问题描述】:
我有点困惑,为什么这没有找到记录数。我的表“tblDatabase”有 3 条记录。我希望它克隆记录集,以便我们实际上不会更改任何记录。我们只想在浏览数据时读取它们,然后进一步浏览被选中的项目(在这种情况下,字段“SELECT”设置为 True)。
谁能告诉我我做错了什么? RecordCount 一直返回为 0。尝试使用 RS1.MoveLast、MoveNext 等...但返回结果相同。非常感谢对我做错的任何帮助!
Set RS1 = CurrentDb.OpenRecordset("tblDatabase").Clone
RS1.MoveFirst
Debug.Print RS1.RecordCount
For i = 1 To RS1.RecordCount
If RS1.Fields("Select") = True Then
strRequestNo = strRequestNo & IIf(Len(strRequestNo) = 0, "", ",") & Str(RS1.Fields("Request No"))
strName = RS1.Fields("Name")
'Pops up the Approval Dialog for user to Name + Date Approved.
'The Code should not continue until the form is closed.
DoCmd.OpenForm "frmClientAuthorization", acNormal, , , acFormEdit, acDialog, strRequestNo & "|" & strClientName
End If
RS1.MoveNext
Next i
【问题讨论】:
-
是第三行(Debug.Print RS1.RecordCount)返回零吗?
-
是的,第 3 行返回 0,但是,我已将第 2 行更改为 RS1.MoveLast,它仍然为 Debug.Print 返回 0。
-
我尝试在下面回答。
-
尝试将
CurrentDb.OpenRecordset("tblDatabase").Clone更改为CurrentDb.OpenRecordset("tblDatabase", dbOpenSnapshot)。