Base de donnees

denver_t2001 Messages postés 3 Date d'inscription lundi 1 mars 2004 Statut Membre Dernière intervention 4 mai 2004 - 4 mai 2004 à 19:22
denver_t2001 Messages postés 3 Date d'inscription lundi 1 mars 2004 Statut Membre Dernière intervention 4 mai 2004 - 4 mai 2004 à 20:01
slt j'essaye d'atteindre les enregistrement de ma base de données pour la comparer avec un textbox!!
ça marche parfaitement!! mais le problème c'est que pour le dernier enregistrement il me dit "erreur d'execution'3021'" either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record!!
j'ai tout essayé je trouve pas
à l'aide
DenverVotre texte ICI

2 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
4 mai 2004 à 19:35
Ben t'es au bout du rouleau la !! Enfin, je veux dire au bout de tes enregistrements ! Donc, comme il te le dit, il n'y a plus d'enr courant donc tu ne peux plus faire appel aux champs !!
Test la valeur de EOF avant. SI = True, tu es après le dernier enregistrement (et non pas sur le dernier enregistrement !!!!)

Christophe R.
0
denver_t2001 Messages postés 3 Date d'inscription lundi 1 mars 2004 Statut Membre Dernière intervention 4 mai 2004
4 mai 2004 à 20:01
ok je vais essayer mais c'est bizarre car je pense qu'il fait la comparaison!!
je t'envoie un bout de code

Public Sub verification()
Dim cn As ADODB.connection 'Déclaration d'une Nouvelle Connection
Set cn = New ADODB.connection
Dim RS As New Recordset 'Déclaration d'un Nouveau Recordset
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\code.mdb;"
' ouverture de la table code
RS.Open "code", cn
frm_interface_client.Label2.Caption = RS.RecordCount & " records"

'ceci c'est pour avoir le total des enregistrements

For total_bd = 0 To RS.EOF
If RS.EOF <> True Then
total_bd = total_bd + 1
End If
RS.Move total_bd
Next total_bd

'ici je reviens au premier enregistrement

RS.MoveFirst
For I = 0 To total_bd
RS.Move I

If frm_interface_client.txt_codenonabo.Text = RS!code Then
If RS.Fields(6).Value = False Then
MsgBox "ok"
valid = True
'ici j'active le label de l'heure, le compteur, et l'horloge systeme
frm_interface_client.txt_codenonabo.Text = vbNullString
frm_interface_client.cmd_ok_nonab_end.Visible = True
frm_interface_client.compteur.Visible = True
frm_interface_client.lbl_heure0.Visible = True
frm_interface_client.Tim_heure.Enabled = True
frm_interface_client.Tim_connection.Enabled = True
frm_interface_client.compteur.Caption = RS!tranche_restante
frm_interface_client.temps = RS!tranche_restante + frm_interface_client.temps
sauv_I = I
connection.debut_connexion
'RS.Close
'cn.Close
Exit Sub
Else
MsgBox "Code déjà utilisé", vbExclamation, "Cyber -X v 1.0"
frm_interface_client.txt_codenonabo.Text = vbNullString
RS.Close
cn.Close
Exit Sub
End If
End If
Next I
If valid = False Then
frm_interface_client.txt_codenonabo.Text = vbNullString
MsgBox "Petit voleur"
End If
RS.Close
cn.Close
End Sub
Denver
0
Rejoignez-nous