Modifier un enregistrement

jdetrez Messages postés 25 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 25 août 2005 - 25 août 2005 à 16:52
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 - 25 août 2005 à 18:45
et oui c encore moi!

voila mon code:

Dim db As Database
Dim rs1 As Recordset
Dim sql As String

sql = "SELECT * FROM Connexion WHERE Login='" & TxtCurrentLogin.Text & "'"


Set rs1 = db.OpenRecordset(sql, dbOpenDynaset)

rs1.Edit

rs1.Fields("Login") = TxtNewLogin.Text
rs1.Fields("Password") = TxtNewPass.Text

rs1.Update
rs1.Close
MsgBox " Mot de passe changé"

ET quand je compile il me met une erreur au niveau de rs1.Edit qui me dit méthode ou membre de données introuvable.

C un code que j ai sorti d un tutorial alors je vois pas trop mon erreur.

Merci de me donner un coup de main.

8 réponses

cs_cbu Messages postés 394 Date d'inscription mercredi 30 janvier 2002 Statut Membre Dernière intervention 4 novembre 2009 1
25 août 2005 à 17:02
Bah moi je ferais pas ca en fait .... je ferais plutot :



Set rs1 = CurrentDb.OpenRecordset("Connexion ")



rs1.MoveFirst

While Str(rs1.Fields("Login")) <> Str(TxtCurrentLogin.value) 'or not rs1.EOF

'J'ajouterai le test de EOF ..

rs1.MoveNext

Wend



'On est sur le bon enregistrement..

rs1.Edit

rs1!Login = TxtCurrentLogin.value

rs1!Password = TxtNewPass.value

rs1.Update



rs1.Close



Set rs1 = Nothing



Voilou ..
0
jdetrez Messages postés 25 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 25 août 2005
25 août 2005 à 17:06
ok je vais essayer ca merci pour tout
0
cs_cbu Messages postés 394 Date d'inscription mercredi 30 janvier 2002 Statut Membre Dernière intervention 4 novembre 2009 1
25 août 2005 à 17:07
Essaye avant de remercié c'est pas dis que ca marche
0
jdetrez Messages postés 25 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 25 août 2005
25 août 2005 à 17:19
j ai repri ton code mais j ai toujours la meme erreur au meme endroit.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_cbu Messages postés 394 Date d'inscription mercredi 30 janvier 2002 Statut Membre Dernière intervention 4 novembre 2009 1
25 août 2005 à 17:36
Un truc est anormalement déclaré ... :s

dans ton code, DB n'est pas renseigné et dans mon cas rs1 n'est pas déclaré ...

Essaye un des 2 codes :



Dim rs1 As Recordset

Set rs1 = CurrentDb.OpenRecordset("Connexion ")

rs1.MoveFirst
While Str(rs1.Fields("Login")) <> Str(TxtCurrentLogin.value) 'or not rs1.EOF
'J'ajouterai le test de EOF ..
rs1.MoveNext
Wend

'On est sur le bon enregistrement..
rs1.Edit
rs1!Login = TxtCurrentLogin.value
rs1!Password = TxtNewPass.value
rs1.Update

rs1.Close

Set rs1 = Nothing



ou



Dim db As Database

Dim rs1 As Recordset

Dim sql As String



sql = "SELECT * FROM Connexion WHERE Login='" & TxtCurrentLogin.Text & "'"



db = CurrentDb

Set rs1 = db.OpenRecordset(sql, dbOpenDynaset)



rs1.Edit



rs1.Fields("Login") = TxtNewLogin.Text

rs1.Fields("Password") = TxtNewPass.Text



rs1.Update

rs1.Close

MsgBox " Mot de passe changé"



So .. ?
0
cs_cbu Messages postés 394 Date d'inscription mercredi 30 janvier 2002 Statut Membre Dernière intervention 4 novembre 2009 1
25 août 2005 à 17:37
Mince j'ai un espace en trop .. sur la ligne

Set rs1 = CurrentDb.OpenRecordset("Connexion ")


>> Remplace par :

Set rs1 = CurrentDb.OpenRecordset("Connexion")
0
jdetrez Messages postés 25 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 25 août 2005
25 août 2005 à 17:49
ca ne marche pas non plus dans mon code ( j avais deja déclaré rs1 avant) et avec ton code il y a une erreur a la ligne db = CurrentDb
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 20
25 août 2005 à 18:45
Salut,

Et en ajoutant au début :
set db = opendatabase("CheminBase.mdb") ?

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
Rejoignez-nous