学生管理信息系统之实时错误94 无效使用NULL

本文档详细解析了VBA编程中常见的三个错误:实时错误94无效使用NULL、实时错误-2147217885(80040e23)行句柄引用了一个已被删除的行或标识为删除的行、编译错误:forcontrol控件变量已经在使用,并提供了具体的代码示例与解决办法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

问题一 :实时错误94 无效使用NULL

 

代码如下:

Else
       txtClassno.Text = mrc.Fields(0)
       ComboGrade.Text = mrc.Fields(1)
      txtDirector.Text = mrc.Fields(2)
       txtClassroom.Text = mrc.Fields(3)  
       End If

改写后的代码:

Else
       txtClassno.Text = mrc.Fields(0)
       ComboGrade.Text = mrc.Fields(1)
      txtDirector.Text = mrc.Fields(2)& “”
       txtClassroom.Text = mrc.Fields (3)  & “” 
       End If

解决方法 :

可以在后面加& “”  直接把一个空值的字符串赋值给前面的代码。

问题二:实时错误-2147217885(80040e23)行句柄引用了一个已被删除的行或标识为删除的行

错误之处:
  在点击删除记录时就会报这个错!!
  我在cmdDelete_Click 事件中不合适的位置添加了mrc.Delete语句,导致更新之后原纪录被删除,出现错误
解决办法:
  删除mrc.Delete语句

 

错误三:编译错误: for control 控件变量已经在使用

 

 For selectcourse = 0 To Listallcourse.ListCount - 1
        If Listallcourse.Selected(selectcourse) = True Then
          Listselectcourse.AddItem Listallcourse.List(Listallcourse.ListIndex)
          '向listelectcourse列表中添加课程
           For j = i + 1 To Listselectcourse.ListCount - 1
             For j = i + 1 To Listselectcourse.ListCount
             '判断在list列表中是否有相同名称
        If Listselectcourse.List(i) = Listselectcourse.List(j) Then
           Listselectcourse.RemoveItem j
           MsgBox "以添加此课程!", vbOKOnly + vbExclamation, "提示"
           Exit Sub
         End If
        Next j


报错原因:

循环变量已经在使用的意思···这里的两个循环变量都是 j,而且是镶嵌在一起的,所以会报错 。

解决方法:

将第一个报错的  “  j ”  给为  “i”就可以了。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值