Office中国论坛/Access中国论坛

标题: 子过程或函数未定义 [打印本页]

作者: miaowenxin    时间: 2007-10-25 16:54
标题: 子过程或函数未定义
我按着一个例子编的目录树,为何出现提示:子过程或函数未定义
作者: miaowenxin    时间: 2007-10-25 16:59
标题: 代码如下
Private Sub Form_Load()

    Dim objNode As Node
    Dim Rst As DAO.Recordset
    Dim strID As String
    Dim MaxLevel As Integer
    Dim I As Integer

    Set objTree = Me.TreeView0.Object
    objTree.Nodes.Clear

    Set objNode = objTree.Nodes.add(, , "NO.1", "建筑定额")    ' 头

    MaxLevel = CurrentDb.OpenRecordset("SELECT 等级 FROM 章节表 order by 等级 desc;")(0).Value

    For I = 1 To MaxLevel

        Set Rst = CurrentDb.OpenRecordset("SELECT 等级,ID,章节名称 FROM 章节表 where  等级=" & I & ";")

        Do Until Rst.EOF

            If Rst!等级 = 1 Then   '顶层菜单
                Set objNode = objTree.Nodes.add("NO.1", 5, "NO." & Trim(Rst!ID), Trim(Rst!章节名称))
            Else
                Set objNode = objTree.Nodes.add("NO." & Left(Rst!ID, (Rst!等级 - 1) * perSectionLong), 5, "NO." & Trim(Rst!ID), Trim(Rst!章节名称))
            End If
            Rst.MoveNext
        Loop
    Next

    Call TreeView0_NodeClick(objTree.Nodes(1))

End Sub
作者: tz-chf    时间: 2007-10-25 17:21
你至少得把错在哪句标出来吧
作者: miaowenxin    时间: 2007-10-25 17:24
标题: 错在这句
Call TreeView0_NodeClick(objTree.Nodes(1))
作者: fan0217    时间: 2007-10-25 17:42
找找TreeView0_NodeClick在那里?当中肯定没有这个过程。
作者: miaowenxin    时间: 2007-10-25 18:19
标题: 我还是不懂
谢谢fan0217版主的回复,但我还是没有找到问题出在什么地方,
请帮忙给修改一下
作者: miaowenxin    时间: 2007-10-26 21:13
我试过拉,把它删除就不显示拉
作者: andymark    时间: 2007-10-27 00:23
缺少下面的过程,请仔细对照原例子。真的不清楚请把示例和原例子一起传上来
TreeView0_NodeClick(objTree.Nodes(1))
作者: miaowenxin    时间: 2007-10-27 00:53
标题: 这是原例子
这是原例子
作者: miaowenxin    时间: 2007-10-27 00:57
标题: 这是我按着例子,编的但是总是出错
这是我按着例子,编的但是总是出错

请帮忙修改一下,谢谢!
作者: miaowenxin    时间: 2007-10-27 21:04
我是个菜鸟请大家帮帮我把!
作者: 张杨    时间: 2010-3-16 16:31
Private Sub TreeView0_NodeClick(ByVal Node As Object)

    Dim strCARGOTYPE_NO As String
    Dim strSQL As String
    Dim i As Integer
    Dim n As Integer
    Dim strTip As String
    Dim a As String
    Dim left As String
    strCARGOTYPE_NO = Right(Node.Key, Len(Node.Key) - 3)
    '判断是否是顶层
    If strCARGOTYPE_NO = "1" Then  '预先定义好的:NO.1,第3位向后的字符,所以是1
        strSQL = "SELECT * FROM ck_库存查询;"
        Me.lblTip.Caption = "库存"
    Else
        i = Len(strCARGOTYPE_NO)
        strSQL = "SELECT * FROM ck_库存查询 WHERE left([分类编号]," & i & ")='" & strCARGOTYPE_NO & "';"
        'Debug.Print I
        For n = 1 To i / perSectionLong
            strTip = strTip & Trim(CurrentDb.OpenRecordset("SELECT CARGOTYPE_NAME FROM 产品分类 where left([CARGOTYPE_NO]," _
                                                         & (n * perSectionLong) & ")='" & left(strCARGOTYPE_NO, (n * perSectionLong)) & "' and CARGOTYPE_LEVEL=" & n & ";")(0).Value) & ">>"
        Next
        strTip = "库存" & ">>" & left(strTip, Len(strTip) - 2)
        Me.lblTip.Caption = strTip
    End If
    'Debug.Print strSQL
    Me.subMX_CARGO.Form.RecordSource = strSQL
End Sub

我这个也是按例子编写的总提示函数未定义是left函数,你要知道了请帮我解答一下。谢!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3