学生管理系统调试——实时错误(实时错误“424”“5”“91”)
最近刚刚敲了一个小小的练习小程序,其中出现了一些实时错误,想着也许以后还会出现就打算写一个系列博文记录一下,同时也算是和大家交流学习吧!
1、实时错误“424” ----要求对象
个人觉得出现这种情况完全是初学者的不熟悉造成的,因为出现这种错误的原因无非是:工程内的类名无效(简单的说就是将窗体名或控件名写错了);
这种情况没有遇到可能也有借鉴作用http://blog.sina.com.cn/s/blog_4eb23c8d01011f82.html。
2、实时错误"5"---无效的过程调用或参数
出错代码:
Private Sub Form_Load() Text1.Text = "" Text2.Text = "" Text1.SetFocus End Sub
出现问题的原因:
在Form_load过程中不能使用Text1.SetFocus属性(因为在窗体的加载过程中文本框还未画出)。
解决方法:
将控件Text1的TabIndex属性设为0。
3、实时错误“91”---对象变量或With块变量未设置
'调用ExecuteSQL函数执行SQL语句获得结果集 strSQL = "select * from user_Info where user_ID='" & txtUserName.Text & "'" Set objRs = ExecuteSQL(strSQL, strMsg)
创建对象变量有两个步骤。第一,必须先声明对象变量。然后必须用 Set 语句将一个正确的引用赋值给对象变量。同样地,With...End With 块必须先用 With 语句进入点来执行初始化。
此错误有以下的原因:
试图使用的对象变量,还没有用一个正确对象的引用来赋值。
我错误的原因:模块代码中设定的密码和ODBC配置过程设定的不一样,导致了Set语句无法将一个正确的引用赋值给对象变量。
解决方法:
给对象变量指定或再指定一个引用。例如,如果在下列的代码中省略 Set 语句的话,那么引用 MyObject 将会产生错误:
Dim MyObject As Object ' 创建对象变量。 Set MyObject = Sheets(1) ' 创建一个正确的对象引用。 MyCount = MyObject.Count ' 计数值赋给 MyCount。 试图用的对象变量已经被设为 Nothing。 Set MyObject = Nothing ' 释放此对象。 MyCount = MyObject.Count ' 引用了已释放的对象。
再指定引用给对象变量。例如,使用新的 Set 语句给对象设置新的引用。
此对象是正确的对象,但没有被设置,因为在对象库中,在 “引用” 对话框中没有被选取。
在 “添加引用” 对话框选择对象库。
在 With 块内GoTo 语句的去向。
不要跳进 With 块。确保块使用 With 语句进入点以执行初始化。
我的解决方法:修改模块中的用户名名称和相应的密码。
Public Function ConnectString() As String '************************************************** '作用:设置数据库连接字符串 '输入参数:无 '返回值:需要的数据库连接字符串connectString '修改日期:2013.8.1 '作者:Senior_Lee '************************************************** ConnectString = "FileDSN=student.dsn;UID=lee;PWD=123" End Function
考虑到博客的长度,今天就先更这些了;都是一些常见错误希望能给我的读者帮助。同时在写这篇博客的过程中也遇到了一些麻烦,当时调试遇到错误后只是将错误的截图保留了,并没有留下代码之类了这给自己写博客总结的带来了不小的麻烦。这算是给自己的一个警示,同时也是给大家一个提醒吧。不要太过相信自己的记忆力!