一个关于recordset的find方法的问题

smallsnig 2003-03-26 01:55:43
每次查找完后怎么返回的都是第一个满足条件的记录,有没有办法实现每次都返回下一个满足条件的记录。
...全文
78 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
smallsnig 2003-03-27
谢谢各位,这个问题刚刚解决了。
回复
bluesanke 2003-03-27
find好使吗,总感觉不能使呀
回复
smallsnig 2003-03-27
呵呵,这个我知道啊,不好意思,可能我的表达不清楚,我这里用 rs.find .... 因为我设想的查找条件因该返回好几条记录的,但是实际操作中只返回一条记录,其他满足条件的记录没有返回,我不知道rs.find的方法执行后指针是不是会定各在当前满足条件的记录上,那么我在执行一次rs.find的话会从当前记录开始继续往下查找满足条件的记录,不过好象他不是这么工作的
回复
wang852963 2003-03-26
设你查找到的RS集为全局变量,你可以在按钮里写入下面代码
if rs.recordcount>0 then
if rs.bof then rs.movefirst
do until rs.eof
'显示数据
rs.movenext '注:就是你想要的指针一条一条下移。
loop
endif
回复
smallsnig 2003-03-26
小弟愚钝能不能给点代码啊
谢谢谢谢
回复
chenyu5188 2003-03-26

do while net rs.eof
........
loop
回复
smallsnig 2003-03-26
不是啊,我用了一个按扭,比如说满足条件的记录有第1,3,5 条,然后我要实现第一次按下按扭的时候datagrid指针指向第一条,再按依次指针指向第二条
回复
sicainiao 2003-03-26
你可能设定的是在条件满足后就反回了,而没再去执行。。
只要你的循环中没有.movefirst的指令。。

你可以加上.movenext继续下去,直到.eof为止如:

with rs 'rs为记录集
 do while .eof
if 你的条件 then
   执行你要的过程
  end if
  .movenext
loop
end with
'注意要考虑数据记录为空的情况
回复
qqqdong 2003-03-26
用过滤然后便历
回复
litsnake1 2003-03-26
rst.Find "car_color_id>5"
While Not rst.EOF
Debug.Print rst(0)
rst.MoveNext
Wend
rst.Close
回复
相关推荐
发帖

1187

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
帖子事件
创建了帖子
2003-03-26 01:55
社区公告
暂无公告