我的VB程序运行到If rs.EOF = False Then这句时,弹出错误:事实错误91 对象变量未设置,求指点! 30

PrivateSubCommand3_Click()'修改用户信息DimtxtSQLAsStringDimmAdoRAsADODB.Recordset'定义变量记录集Di... Private Sub Command3_Click() '修改用户信息
Dim txtSQL As String
Dim mAdoR As ADODB.Recordset '定义变量记录集
Dim MsgText As String
If Text1(3) = "" Then
MsgBox "请先选择用户名称!", vbOKOnly, "提示" '提示信息,用户名不能修改
List1.SetFocus
Exit Sub
End If
If Text1(4) = "" Then
MsgBox "修改密码时需要旧密码,请输入!", vbOKOnly, "警告" '提示信息
Text1(4).SetFocus
Exit Sub
End If
If Text1(5) = "" Then
MsgBox "新的密码不能为空!", vbOKOnly, "提示" '提示信息
Text1(5).SetFocus
Exit Sub
Else
If Text1(5) <> Text1(6) Then
MsgBox "两次密码输入不同!", vbOKOnly, "提示" '新密码验证
Text1(5) = ""
Text1(6) = ""
Text1(5).SetFocus
Exit Sub
End If
End If
txtSQL = "select * from user_Form where user_ID='" & Trim(Text1(3)) & "' and user_PWD='" & Trim(Text1(4)) & "'" '设置查询语句
Set mAdoR = ExecuteSQL(txtSQL, MsgText) '查询数据库中是否有此用户与对应的密码
If mAdoR.EOF = False Then
txtSQL = "delete from user_Form where user_ID='" & Trim(Text1(3)) & "'" '若没有,则先设置删除语句,以备修改
Else
MsgBox "用户密码输入错误!", vbOKOnly, "警告" '否则提示出错
Text1(4).SetFocus
Exit Sub
End If
Set mAdoR = ExecuteSQL(txtSQL, MsgText) '调用函数删除
txtSQL = "select * from user_Form"
Set mAdoR = ExecuteSQL(txtSQL, MsgText)
mAdoR.AddNew
mAdoR.Fields(0) = Trim(Text1(3)) '添加新用户信息
mAdoR.Fields(1) = Trim(Text1(5))
mAdoR.Fields(2) = Now
mAdoR.Update '更新后得到"修改"的效果
mAdoR.Close
For i = 3 To 6
Text1(i) = ""
Next
MsgBox "用户信息已经修改成功!", vbOKOnly, "提示" '提示
End Sub
4
展开
 我来答
匿名用户
2017-01-02
展开全部
前面的那个 ExecuteSQL 返回了一个 Null。
可能是出错,也可能是 txtSQL 的执行结果为空。
贴这些代码都没用了,贴 ExecuteSQL 里面的吧。
追问
有邮箱吗 我发文本给你看下,谢谢了
追答
最好的办法是你自己跟踪调试。
发给 DNC 吧,我们是一个团队的,都一样。
己曼寒SR
2017-01-01 · TA获得超过3144个赞
知道大有可为答主
回答量:1759
采纳率:90%
帮助的人:1015万
展开全部
那你就得贴出 ExecuteSQ
这个自定义过程来看看了。
更多追问追答
追问
cnn.Open ConnectStr    
If InStr("INSERT,DELETE,UPDATE", UCase$(sCmd(0))) Then
cnn.Execute SQL
模块部分 自定义查询添加修改函数这没问题,我同一个程序复制过来的,一模一样的工程,同一个电脑出现了这个错误
追答
代码要贴全 这样很难判断
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式