Run-time error "3021"

carterjr Messages postés 35 Statut Membre -  
carterjr Messages postés 35 Statut Membre -
slt tous le monde!
quelqu'un peut m'aider? a chaque fois que j'entre le nom et le mot de passe utilisateur, il m'affiche une erreur: BOF ou EOF es égal à true ou l'enregistrement actuel a été supprimé. L'opération demandée nécessite un enregistrement actuel. Pourtant ya des enregistrement dans ma table Utilisateur. Il marche aussi en DAO mais dès que je change en ADODB il m'affiche cette erreur

Option Explicit

Public LoginSucceeded As Boolean

Private Sub cmdCancel_Click()
    LoginSucceeded = False
    Me.Hide
End Sub

private cmd-OK()
    Dim cn As ADODB.Connection
    Dim record As ADODB.Recordset
    Set cn = New ADODB.Connection
    Set record = New ADODB.Recordset
    
    cn.Open "DSN=BDDSources", "", ""
    record.Open "SELECT * FROM Utilisateur WHERE Utilisateur.[Nom Utilisateur]      LIKE '" & Text1.Text & "'", cn, adOpenDynamic, adLockOptimistic

    If Text1.Text = record.Fields(0) And Text2.Text = record.Fields(1) Then
        LoginSucceeded = True
        Me.Hide
        MsgBox "Welcome", vbOKOnly, "Login"
    Else
        MsgBox "Invalid Password, try again!", vbInformation, "Login"
        Text2.SetFocus
        SendKeys "{Home}+{End}"
    End If
    cn.Close
    record.Close
    Set cn = Nothing
    Set record = Nothing
end sub

merci d'avance

2 réponses

  1. Normad Messages postés 112 Date d'inscription   Statut Membre Dernière intervention   40
     
    Bonjour,
    Qu'est-ce que ça donne en ajoutant

    record.movefirtst

    avant la ligne
    If Text1.Text = record.Fields(0) And Text2.Text = record.Fields(1) Then

    0
  2. carterjr Messages postés 35 Statut Membre
     
    il m'affiche la même erreur
    0