***************AIDE : COMMENT FAIRE UNE UPDATE D'UN ENREGISTREMENT EN DAO*******

pingwee - 3 nov. 2001 à 15:59
malikcpp Messages postés 58 Date d'inscription mercredi 27 juin 2007 Statut Membre Dernière intervention 1 septembre 2009 - 5 août 2007 à 18:24
Comment faire une commande update d'un enregistrement en dao ?
si quelqu'un peut m'aider ce serai sympa.

6 réponses

avec DAO 2.5/3.5

path = chemain de la base de donnée
table = nom de la table de donnée
no = noméro de ligne ou la modification doit être faite
i = numéro du champe de la ligne
txt = nouveau text du champ.

Dim bd As Database
Dim rs As Recordset

Set bd = OpenDatabase(path)
Set rs = bd.OpenRecordset(table)

With rs
.Move no
.Edit
.Fields(i).Value = txt
.Update
.Close
End With
bd.Close
si tu a une base de donnée qui a une table dans laquelle tu veut vodifier la ligne 3 et le champ 2 (dans excel 3;B , mais ca a rien a voire....) ben no 3 et i 2
et tu veut y écrire "salut" ben txt = "salut"
0
J'ai une erreur "erreur de conversion du type de donnée"
ma base est sous access 2000 et j'ai bien coché la référence "dao 3.6"

voici mon script :

Set rs = db.OpenRecordset("SELECT * FROM mabase WHERE nom='" + mot_clé + "'")

With rs
.Edit
.Fields(2).Value = "mon texte"
.Update
.Close
End With
0
J'ai une erreur "erreur de conversion du type de donnée"
ma base est sous access 2000 et j'ai bien coché la référence "dao 3.6"

voici mon script :

Set rs = db.OpenRecordset("SELECT * FROM mabase WHERE nom='" + mot_clé + "'")

With rs
.Edit
.Fields(2).Value = "mon texte"
.Update
.Close
End With
0
il faut avoire déclaré les varables db et rs...
dim db as database
dim rs as recordset
0

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

Posez votre question
je les ai déclaré, mais j'ai toujour la même erreur
0
malikcpp Messages postés 58 Date d'inscription mercredi 27 juin 2007 Statut Membre Dernière intervention 1 septembre 2009
5 août 2007 à 18:24
Bon si j'ai bien compris tu veux mettre a jour ta BDD après avoir appeler la fonction oRst.Edit

   Bon tout d'abord tu doit déclarer  les variables suivantes

      Dim oDb as DAO.Database
      Dim oRst as DAO.Recordset

   Je crois que tu l'as bien compris oDb est notre bdd et oRst est ta requête
   
   Bon après que tu as déclaré ta base et ta requête tu met au moment ou tu voudras modifier l'enregistrement
      
      While not oRst.EOF
      oRst.Edit
      oRst.Field("champ à modifier") = valeur à lui attribuer
      ... (pour les autres champs)
      oRst.Update
      oRst.MoveNext
      Wend

Voilà, normalement ça devrais marcher  (en fait la boucle ici sert quand t'as plus d'1 enregistrement.)

Si tu as des questions n'hésite pas
0
Rejoignez-nous