以删除语句为例,进行讲解。我将讲解过程以注释的方式加到代码中。
我先讲一下这个删除过程中指针移动的主要过程:
如果你要删除一条数据,首先你应将指针移向该数据的下一条数据,并且记录该数据的位置,然后将指针移动回你要删除数据的位置。删除数据,然后回到书签记录的位置,也就是下一行的位置,并显示该行数据。
myBookmark = mrc.Bookmark '首先用书签记录当前的位置
str2$ = MsgBox("是否删除当前记录?", vbOKCancel, "删除当前记录")
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
End Sub