求救,提示with变量未设置,跪求
Private Sub Form_Load()Dim rst As ADODB.Recordset
Dim key As String '保存用户ID
Dim User_kind '保存用户类别
Dim list As ListItem
'添加用户列表
SQL = " select * from 用户信息表 order by userID"
Set rst = SelectSQL(SQL, msg)
If rst.RecordCount = 0 Then MsgBox ("请先创建用户信息!")
CmdOk.Enabled = False
Exit Sub
Else
'向ListView中添加数据
rst.MoveFirst
Do Until rst.EOF
key = rst.Fields("userID") & rst.Fields("userName")
User_kind = Trim(rst.Fields("userType"))
If User_kind = "管理人员" Then
'当时管理人员时,用图像2
Set list = ListView1.ListItems.Add(, , key, 2)
Else
Set list = ListView1.ListItems.Add(, , key, 1)
End If
rst.MoveNext
Loop
rst.Close
End If
End Sub
Private Sub ListView1_Click()
'取出当前用户ID操作
If ListView1.ListItems.Count > 0 Then
UserID = Left(Trim(ListView1.SelectedItem), 6) '取出当前用户ID
End If
End Sub
Private Sub CmdOK_Click()
'确定操作
Dim password As String
'判断用户是否存在
SQL = " select * from 用户信息表 where userID='" & UserID & "'"
Set rs = SelectSQL(SQL, msg)
If rs.RecordCount > 0 Then
password = Trim(rs.Fields("password")) '取出该用户的密码
Else
MsgBox ("数据库操作错误!")
Exit Sub
End If
'判断密码是否正确
If password = Trim(txtPassword.Text) Then
LoginSucceeded = True
frmEDMS.Show
Unload Me
Else
MsgBox ("密码错误!")
txtPassword.SetFocus
txtPassword.SelStart = 0
txtPassword.SelLength = Len(txtPassword.Text)
LoginSucceeded = False
End If
End Sub --------------------编程问答-------------------- SelectSQL(SQL, msg) 没有返回记录集
Private Sub Form_Load()
Dim rst As ADODB.Recordset
Dim key As String '保存用户ID
Dim User_kind '保存用户类别
Dim list As ListItem
'添加用户列表
SQL = " select * from 用户信息表 order by userID"
Set rst = SelectSQL(SQL, msg)
if rst is nothing then '一般需要对返回的记录集为空时,进行处理
msgbox "没有返回记录集"
exit sub
end if
If rst.RecordCount = 0 Then MsgBox ("请先创建用户信息!")
CmdOk.Enabled = False
Exit Sub
Else
'向ListView中添加数据
rst.MoveFirst
Do Until rst.EOF
key = rst.Fields("userID") & rst.Fields("userName")
User_kind = Trim(rst.Fields("userType"))
If User_kind = "管理人员" Then
'当时管理人员时,用图像2
Set list = ListView1.ListItems.Add(, , key, 2)
Else
Set list = ListView1.ListItems.Add(, , key, 1)
End If
rst.MoveNext
Loop
rst.Close
End If
End Sub
Private Sub ListView1_Click()
'取出当前用户ID操作
If ListView1.ListItems.Count > 0 Then
UserID = Left(Trim(ListView1.SelectedItem), 6) '取出当前用户ID
End If
End Sub
--------------------编程问答-------------------- 我把这个按你写的整了一下,还是不行啊,你把你邮箱发过来我这个程序帮我看看吧,这两天交论文没法生成exe急死了,帮帮忙,多谢多谢 --------------------编程问答-------------------- 将SelectSQL(SQL, msg)
这个函数发出来 --------------------编程问答-------------------- 这个程序是我从图书馆光盘上复制下来的,我是vb外行,什么都不懂更别提什么函数了 --------------------编程问答-------------------- 小弟刚学这个,,值得学习一下 --------------------编程问答-------------------- If rst.RecordCount = 0 Then MsgBox ("请先创建用户信息!")
这句有问题。
改成:
If rst.RecordCount = 0 Then
MsgBox ("请先创建用户信息!")
后面的逻辑语句就应该没问题了。
补充:VB , 网络编程