当data1.Recordset.EOF为真时表示游标指针已经最后一条记录之后了,你再使用data1.Recordset.Delete来删除当前记录那肯定会出错啊,因为当前记录为空啊,你一定是Recordset.EOF理解错了,当它为真时表示的是记录集末端,即最后一条记录之后而不是最后一条记录,你可以试着将程序改为以下部分看一下:
...
If Not data1.Recordset.EOF Then
data1.Recordset.Delete
data1.Recordset.MoveLast
Else
cmdNEXT.Enabled = False
cmdLAST.Enabled = False
End If
...
看一下现在是不是已经实现了你想要的功能了呢?
see it?
...
If Not data1.Recordset.EOF Then
data1.Recordset.Delete
data1.Recordset.MoveLast
Else
cmdNEXT.Enabled = False
cmdLAST.Enabled = False
End If
...
看一下现在是不是已经实现了你想要的功能了呢?
see it?
If Data1.Recordset.RecordCount <> 0 Then
If Not data1.Recordset.EOF Then
data1.Recordset.Delete
data1.Recordset.MoveLast
cmdNEXT.Enabled = False
cmdLAST.Enabled = False
End If
Else
MsgBox "库中已经没有记录了,你还要删除什么哪!"
End If
应该改为:
If data1.Recordset.EOF Then
data1.Recordset.Delete
cmdNEXT.Enabled = False
cmdLAST.Enabled = False
data1.recordset.movenext
else
data1.recordset.delete
data1.recordset.movelast
end if
If data1.Recordset.EOF Then
data1.Recordset.Delete
cmdNEXT.Enabled = False
cmdLAST.Enabled = False
data1.recordset.MovePrevious
else
data1.recordset.delete
data1.recordset.movenext
end if