1
Private Sub txtUserCode_Validate(Cancel As Boolean)
    If RS!ID = txtUserCode.Text Then
        SQL = "SELECT NAME,PRIVILEDGE FROM ADMIN WHERE CODE=" & txtUserCode.Text
        Set RS = CN.Execute(SQL)
        txtUserName.Text = RS!NAME
    Else
        MsgBox "ENTER VALID NO"
        txtUserCode.Text = ""
        Cancel = True
    End If
End Sub

在这段代码中,我想执行如下:

  1. 如果我输入表中存在的 ID,那么它会显示信息,但它只考虑第一条记录(RS!ID(0))而不是下一条

  2. 如果我输入了表中不存在的 ID,那么它不应该抛出错误 3021- Requested operation requires current record,而是转到其他部分。

请帮忙

4

1 回答 1

0

我假设RS是一个记录集。

根据RS类型,您可以尝试Find这样的记录:

RS.MoveFirst
RS.Find("[CODE]=" &  txtUserCode.Text)
If Not RS.EOF Then
    ' found!
End If

链接到 ADOFind函数。

于 2013-02-21T16:36:38.137 回答