0. mrcc.EOF = False “91” 对象变量或With块变量未设置
txtSQL = “select * from student_Info where student_No = '” & Trim(txtSID.Text) & "’"
以上这句话一个空格都不能少,否则就会报错
mrc.Delete '删除当前记录 txtSQL = "select * from student_Info where student_No = '" & Trim(txtSID.Text) & "'" Set mrcc = ExecuteSQL(txtSQL, MsgText) If mrcc.EOF = False Then '判断学号是否重复 MsgBox "学号重复,请重新输入!", vbOKOnly + vbExclamation, "警告" mrcc.Close txtCourseno.SetFocus Else mrcc.Close '关闭连接
1. 找不到工程或库
查看工程——引用,是否存在丢失的引用,去掉勾选即可。
2. 对象变量或with块变量未设置——连接ODBC数据源
多数是数据库ODBC连接有问题,以下是连接方法。
- 打开ODBC数据源管理程序(64位)—— 文件DSN —— 添加。
- 选择SQL Server —— 下一步。
- 输入“studentinfo.dsn” —— 完
- 点击完成 —— 测试数据源 —— 测试成功!
3. 用户定义类型未定义
敲机房收费系统的时候,一运行就出现【用户定义类型未定义】的错误提示。
把代码很仔细地看了一遍,没有发现错误,原来是没有对控件预先进行引用。点击【工程】,在下拉菜单中选中【引用】,进入下面的对话框,找到Microsoft ActiveX Data Objects 2.0 Library选项,在前面的小方框中打上对勾点击确定就可以了。
4. 实时错误"424" 要求对象
这种错误的原因是对象不存在或对象命名错误。
我的错误原因是控件的命名与代码不一致,将控件的名称改一下就可以了。
5. 运行完frmAbout窗口 工程就结束了
没有设置启动对象,点击工程里最下方的属性,选择登陆窗体即可。
6. 子程序或函数未定义
这种情况可能是事件内有一个方法或者数据成员没有定义。
要检查所有变量和控件的名称拼写是否有误。
7. 实时错误"91" 对象变量或With块变量未设置
敲完学生又出现了这个问题,查阅了学长的博客发现了问题所在:
connectstring里面的用户名或者密码错误在ExecuteSQL()这个函数运行的过程中会触发connectstring(),所以connectstring()相当于数据库连接时必须出发的一个事件,里面的字符串必须写正确,否则直接影响到数据库的连接
首先看代码,看代码连接是否有问题,代码如下:
ConnectString = “fileDSN=studentinfo.dsn;UID=sa;PWD=123456”
我的代码写成了如下:
8. 点击登录后 跳转不到下一个页面
登录成功后竟然不出下一个页面,还可以有这种错误吗,经过我的不懈努力,发现还是启动方式的问题,正确的做法应该选择启动方式为Main。
9. 用户定义类型未定义
拼写错误,不小心把“Recordset”拼写成“Recordest”;“ExecuteSQL”拼写成“ExecutrSQL”。
10. ByRef参数类型不符
通过调试得出结论,原来是漏定义了一个变量。
11. 子程序或函数未定义
可以先检查子程序或函数是否拼写错误,再找其他原因,我这里是不小心又拼写错误。