设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1750|回复: 6
打印 上一主题 下一主题

[模块/函数] 求助:关于函数递归求一个元素下面的所有被调用元素

[复制链接]
跳转到指定楼层
1#
发表于 2015-6-14 22:37:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 huzijunreokiki 于 2015-6-15 15:05 编辑

各位大神,打扰大家了,我最近遇到一个问题,前几天todaynew大师写了一个用函数递归出一个节点下面的所有子节点。我照着这个思路,写了个小程序,可是运行不了,也不是程序报错,就是运行这个过程之后,access显示程序未响应,然后等半天等半天,光标都只处于等待状态,只能强行退出access。我的表叫做Use,是这样的一张表,里面存储的是元素调用关系,里面都是存的都是元素ID号。Use表的结构和数据是这样的


(第一列UseElementID是父元素,第二列UseElementID是子元素)
我写的程序是这样的

Option Compare Database
Option Explicit



Public Sub UElements(ByVal n As Integer)

Dim rs As New ADODB.Recordset

rs.Open "Use", CurrentProject.Connection, adOpenForwardOnly, adLockOptimistic

Do While Not rs.EOF
  If rs(0) = n Then
    Debug.Print rs(0), rs(1)
    Call UElements(rs(1))
    rs.MoveNext
  End If
  Loop


   rs.Close
   Set rs = Nothing

End Sub


Sub test()

Call UElements(2)

End Sub

我想求出所有被元素ID为2的这个元素使用的元素,运行后就出现我上面说的情况了。
还有我想把结果写进这个access文件的一个表中,请问如何实现,我是新手,学access才两个月不到,请大师们指点。
谢谢,非常感谢!
[img]file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\437399915\QQ\WinTemp\RichOle\LV9[T)A}E`9X6BIQ7IORO$B.png[/img]
[img]file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\437399915\QQ\WinTemp\RichOle\LV9[T)A}E`9X6BIQ7IORO$B.png[/img]
[img]file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\437399915\QQ\WinTemp\RichOle\LV9[T)A}E`9X6BIQ7IORO$B.png[/img]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2015-6-15 14:30:05 | 只看该作者
这样试试
.
.
.
  End If
  rs.MoveNext
.
.
3#
发表于 2015-6-15 14:32:59 | 只看该作者
写表的例子很多,你找找吧
4#
 楼主| 发表于 2015-6-15 15:13:40 | 只看该作者
成功了,得到我要的结果了,谢谢,谢谢大师指点。我好开心。写表的例子我再找找哦,尝试写写哦,因为我实在太才疏学浅了…………
5#
发表于 2015-6-21 09:15:55 | 只看该作者
huzijunreokiki 能否作个窗体附件发上来,我正急需这方面的知识,谢!
6#
 楼主| 发表于 2015-6-27 06:38:17 | 只看该作者
本帖最后由 huzijunreokiki 于 2015-6-27 06:39 编辑
付谦 发表于 2015-6-21 09:15
huzijunreokiki 能否作个窗体附件发上来,我正急需这方面的知识,谢!

嘿嘿,其实我也是菜鸟级别。是按照todaynew大师做的例子写的一个递归过程,就是上面的那个代码了,按照风中漫步大师的指点,调用出了我想要的元素。窗体暂时还没有做,我做完了,上传上来哦,我抓紧,因为是菜鸟,做起来慢………………,请谅解…………
7#
发表于 2015-6-27 12:23:14 | 只看该作者
huzijunreokiki 发表于 2015-6-27 06:38
嘿嘿,其实我也是菜鸟级别。是按照todaynew大师做的例子写的一个递归过程,就是上面的那个代码了,按照风 ...

大师不敢当,大叔差不多.
一直在路上,学习无止境
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-4-29 07:20 , Processed in 0.107107 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表