我在module中定义:public quanxian as string然后在下面的登陆界面中用到了这个全局变量:
Private Sub Command2_Click()
    If Trim(worknumber.Text) <> "" And Trim(password.Text) <> "" Then
        Dim cn As New ADODB.Connection   '定义ADO的连接对象        Dim rs As New ADODB.Recordset    '定义ADO的记录集对象
        cn.Open "Provider=SQLOLEDB;Password=sa;User ID=sa;Initial Catalog=mes;Data Source=server" '调用连接对象的open方法打开连接        rs.Open "select worknumber,password from worker where worknumber='" & Trim(worknumber.Text) & "'", cn '调用记录集对象的open方法来执行SQL语句        If rs.EOF = True Then
            MsgBox " 工号错误!", vbExclamation + vbOKOnly, "警告"
            worknumber.SetFocus
            worknumber.SelStart = 0
            Exit Sub
        End If
        worknumber = rs.Fields(0)
        If Trim(password.Text) <> Trim(rs.Fields(1)) Then
            MsgBox " 密码错误!", vbExclamation + vbOKOnly, "警告"
            password.SetFocus
            password.SelStart = 0
            Exit Sub
        Else
            quanxian = rs!worklevel                            '********************这里!
            MDIForm1.Show
            Unload Me
        End If
    Else
        MsgBox "没有输入工号或密码!", vbExclamation + vbOKOnly, "警告"
        Exit Sub
    End If
End Sub
可是最后她提示说“项目在所需的名称或序数中未被发现”
这是为什么啊?
我哪里错了吗?

解决方案 »

  1.   

    \\quanxian = rs!\\
    你上面的语句错了.
    改为
    quanxian = rs!字段名
      

  2.   

    这里格式不对
    我是写成 quanxian=rs!worklevel这样应该对吧?
    可是为什么还是有提示呢?
      

  3.   

    看错了,是你的语句问题.\\quanxian = rs!worklevel\\因为你的打开数据表的语句只定义了worknumber跟password 这两个字段.
    所以你用quanxian = rs!worklevel是错的.
    你要加上worklevel字段才行呀. rs.Open "select worknumber,password,worklevel from worker where worknumber='" & Trim(worknumber.Text) & "'", cn