问题原因:
当我们删除最后一条记录是由于数据库已经没有记录了,报错。
解决方法
使用 On Error GOTo 可以解决这个问题
具体代码以修改学籍信息为例:
Dim Str2$ '记下当前位置 mybookmark = mrc.Bookmark '提示是否删除 Str2$ = MsgBox("是否删除当前记录?", vbOKCancel, "删除当前记录") '判断按钮类型 On Error GoTo error If Str2$ = vbOK Then '移动到数据集下一条记录 mrc.MoveNext '判断数据是否为空 If mrc.EOF Then '移动到数据集的第一条记录 mrc.MoveFirst mybookmark = mrc.Bookmark mrc.MoveLast mrc.Delete mrc.Bookmark = mybookmark '调用函数显示数据 Call viewdata Else mybookmark = mrc.Bookmark mrc.MovePrevious mrc.Delete mrc.Bookmark = mybookmark Call viewdata End If Else mrc.Bookmark = mybookmark Call viewdata End If error MsgBox "无任何信息,请先添加班级信息!", vbOKOnly + vbExclamation, "警告" frmModifyclassinfo.Hide frmAddclassinfo.Show
On Error GoTo error 表示禁止当前过程中任何已启动的错误处理程序,一直到error结束。
方法不止这一种,但这种方法感觉很方便,好理解,简单。