Adodc1.Recordset.Find ("名称='" & mno & "'")
如果没有找到,此时,Adodc1.Recordset.EOF将为TRUE,此时只能前移MovePrevious或MoveFirst或MoveLast,不能再MoveNext,即只能move 一个负值,而不能move一个正值。如果再继续move p,将出错,已经到最后一条的后面了
执行以下代码可使Adodc1.Recordset.EOF为TRUE:
Adodc1.Recordset.MoveLast
Adodc1.Recordset.MoveNext
Private Sub Command9_Click()
Dim mno As String, p%
p = Adodc1.Recordset.AbsolutePosition
mno = InputBox("请输入名称", "查找窗")
Adodc1.Refresh
Adodc1.Recordset.Find ("名称='" & mno & "'")
If Trim(mno) = "" Then'应把此判断提到前面
Adodc1.Recordset.AbsolutePosition = p
Value = MsgBox("没有找到记录!", 0, "提示")
ElseIf Text1.Text = "" Then
Adodc1.Recordset.AbsolutePosition = p
Value = MsgBox("没有找到记录!", 0, "提示")
Me.Refresh
End If
可用Bookmark代替AbsolutePosition
End Sub