Microsoft Access 2010,DAO.Recordset

我在.move方法中发现了一个非常奇怪的行为。 有谁知道为什么会这样吗?

首先,记录集已加载

Dim rc as DAO.Recordset
Set rc = CurrentDB.Openrecordset(" ... ")
Debug.Print rc.RecordCount  ' 1273

现在,这可行:

rc.MoveFirst
rc.Move 500

这不起作用:(为什么???)

rc.MoveFirst
rc.Move 1272

现在变得奇怪了:这再次起作用...

rc.MoveFirst
rc.Move 1272
if rc.AbsolutePosition = -1 then
  rc.MoveFirst
  rc.Move 1272
end if

===============>>#1 票数:1 已采纳

在您的第一个mc.MoveFirst之前,请尝试添加mc.MoveLast 这将迫使记录集填充。 我的猜测是,当您尝试移动到最后一条记录时,记录集还没有完全填充。

  ask by SalkinD translate from so

未解决问题?本站智能推荐:

2回复

DAO.Recordset,无法在表对象中使用MoveNext

目标:我正在编写一个循环来逐行查看表,评估字段是否相互匹配,然后移动到下一个记录(行)并重新评估。 我最终想要从中构建一个不断增长的字符串,但是现在我无法让代码进入下一个循环。 值显示代码仅评估第一个记录,并重复自身。 我已经尝试将行'ExDif.MoveNext'移入/移出循环,在结
1回复

.MoveNext在DAO记录集上非常慢

我有一个DAO记录集,它会打开以下查询: 表sd大约有500,000条记录和30列,表sdn大约有5000条记录和4列。 表O有6条记录和12列。 我用以下方式打开记录集: 当我以唯一的用户身份打开数据库时,我第一次在rs上调用.MoveNext ,执行需要1-2分钟;
1回复

MoveNext方法上的ADO记录集数据类型不匹配

经过广泛的Google搜索,我似乎无法解决这个问题。 一周以来,用VBA编写的我的一个函数给出了“运行时错误'-2147467259(80004005)':条件表达式中的数据类型不匹配”。 发生错误的行是“ rstBom.MoveNext”。 我似乎缺乏了解(我不是受过教育的VBA程序
1回复

陈述的奇怪行为

上周,我的行为举止很奇怪,带有if条件,我要感谢任何对发生的事情有任何了解的人。 尽管我发现了一个麻烦的人,但我不喜欢被阴影笼罩。 让我解释。 场景0 (在一切爆发之前,它一直在工作) 语言 :Visual Basic 净周数 :3.5 客户端 :XP(x86)机器(
1回复

CDate有什么奇怪的行为?

我发现CDate函数在以下代码中具有奇怪的行为: 我知道,如果该值大于12,则CDate函数会将其视为日期的“天”部分,而另一部分将视为日期的“月”部分。 可以从( Link )下载源代码。 这有什么规则? 为什么Microsoft没有在MSDN中对此进行解释?
1回复

MS Access .Movenext / .moveprevious

因此,我尝试将tblReceipts变量用作记录集,该记录集可以正常工作,并且已在form_load中进行了设置,但是当我尝试在move next和移动上一个按钮中使用它时,它表示未设置该变量,似乎就像它初始化变量一样,但仅用于表单加载,而没有执行其余的代码,有没有办法公开它? 我得到的错
1回复

IsError的奇怪行为

我有一列的日期设置为文本格式,缺少的值用-标记。 我尝试创建一个表达式(SQL,而不是VBA),该表达式将该列转换为日期,将缺失值转换为0 : 此表达式按预期工作: IIf([column]="-",0,CDate([column]) 但是,如果我尝试使通用性更通用,
1回复

Access 2010奇怪的行为

大家好,我正在Access 2010中进行查询,并且出现了奇怪的行为,因此,我想听听您的意见,下面我们开始: 内部查询总是给出带有两个列的ONE行,该列应该类似于: 现在,像上面那样进行左连接应该返回一行,其中另一列称为L.CodLinea,其值等于ELINEL到'LBASE'或
1回复

关于子查询的奇怪访问行为

我在Access中有这个代码: 当我运行它时,我得到10行。 所以我下次用它作为子查询: 我根本没有结果。 所以我删除了NOT NOT EXISTS中的NOT EXISTS ,我得到了Course表中的所有15行。 所以在我看来,子查询的course和date从主查询的Co
1回复

MS Access中的奇怪行为

现在,我正在使用Access 2010中的一个应用程序,该应用程序根据从共享点站点获取的数据生成信函。 用户从表单上的某些组合框中输入一些参数。 选择完成后,用户可以通过按下按钮来选择所需字母的类型。 这可以正常工作,但是当我关闭访问权限并在以后重新打开它时遇到了一个奇怪的问题。 当