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

smallsnig 2003-03-26 01:55:43
每次查找完后怎么返回的都是第一个满足条件的记录,有没有办法实现每次都返回下一个满足条件的记录。
...全文
120 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
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

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧