Enregistrement Access [Résolu]

Messages postés
85
Date d'inscription
mercredi 17 septembre 2003
Statut
Membre
Dernière intervention
20 mars 2012
- - Dernière réponse : NHenry
Messages postés
14565
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
13 octobre 2019
- 11 mars 2009 à 22:09
Bonjour a toute la communauté !!!

lors d'un enregistrement de VB5 sur une base access j'utilise le code ci-dessous

        Dim db As Database
        Dim Req As Recordset


        Set db = OpenDatabase(MyBase)
        Set Req = db.OpenRecordset("SELECT * FROM Reunion", dbOpenDynaset)
               
        Req.AddNew
        Req.Fields("Reu-clef") = Label1.Caption
        Req.Fields("Reu-date") = Text1.Text
        Req.Fields("Reu-lib") = Text2.Text
        Req.Fields("Reu-1") = Text3.Text
        Req.Fields("Reu-2") = Text4.Text
        Req.Fields("Reu-3") = Text5.Text
        Req.Update

et j'ai une erreur 13 type incompatible sur la ligne

        Set Req = db.OpenRecordset("SELECT * FROM Reunion", dbOpenDynaset)

pouvez vous m'aider a trouver mon erreur

Merci d'avance pour votre aide
Afficher la suite 

6 réponses

Meilleure réponse
Messages postés
12
Date d'inscription
dimanche 16 mars 2003
Statut
Membre
Dernière intervention
29 juillet 2010
3
Merci
Bonjour,

Pourquoi ne ferais-tu pas directement une requete sql "INSERT INTO ?"

ConnDB = nom de ta connexion à ta base de données
Req = Nom de ta requete

Ce qui donne :

'Déclarations
Dim ConnDB As New ADODB.Connection
Dim Req As New ADODB.Recordset

'Connection à ta base de données
ConnDB.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;data source= c:\test.mdb"
ConnDB.Open

'Enregistrement de tes données
Set Req = ConnDB.Execute("INSERT INTO REUNION (Reu-clef,Reu-date,Reu-lib,Reu-1,Reu-2,Reu-3)VALUES('" & Label1.Caption & "','" & Text1.Text & "','" & Text2.Text & "','" & Text3.Text & "', '" & Text4.Text & "', '" & Text5.Text & "'")

Dis moi si cela fonctionne

Oublier, c'est trahir...(Génocide Arménien 1915)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 199 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_labk92
Messages postés
14565
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
13 octobre 2019
136
0
Merci
Bonjour,

Il s'agit de DAO avec VB5 (et pas 2005 j'espère) (je n'ai utilisé VB qu'à partir de VB6).

As-tu d'autres ouvertures de Recordset qui fonctionnent (ou pas) ?
Si ces entrées fonctionne, compares-les.

Le peu que je connais de DAO ma semble correct, revérifies les paramètres.

http://nhen0039.chez-alice.fr/index.php
Commenter la réponse de NHenry
Messages postés
85
Date d'inscription
mercredi 17 septembre 2003
Statut
Membre
Dernière intervention
20 mars 2012
0
Merci
Tout d'abord merci beaucoup pour votre aide
et excusez moi pour le retard de ma reponse mais je n'ai pas eu le temps plus tot

donc j'ai utilisé le code de labk92 et il fonctionne tres bien
cependant j'ai une petite question

en fait une fois l'enregistrement validé je ne le vois pas de suite (j'ai essayé dans un DBgrid et dans un MSFlexGrid)
si je sort du form et que je re rentre alors je vois bien l'enregistrement
Est ce du a une vitesse d'enregistrement dans la base ?

pourtant je fais bien un refresh de mon data !!!

Si vous avez une idée je suis prenneur

Merci d'avance !!!
Commenter la réponse de cs_hustler
Messages postés
14565
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
13 octobre 2019
136
0
Merci
Bonjour,

Quand tu dis rafraichir, tu dis uniquement rafraichir le controle ou réinterroger la bdd ?

http://nhen0039.chez-alice.fr/index.php
Commenter la réponse de NHenry
Messages postés
85
Date d'inscription
mercredi 17 septembre 2003
Statut
Membre
Dernière intervention
20 mars 2012
0
Merci
Quelle rapidité
je fais ça comme code :

    Data1.DatabaseName = MyBase
       
    requete1 = "SELECT [Reu-clef], [Reu-date], [Reu-lib], [Reu-1], [Reu-2]"
    requete1 = requete1 & " FROM Reunion "
    requete1 = requete1 & " ORDER BY [Reu-date]"


    Data1.RecordSource = requete1
    Data1.Refresh

si je le fais immediatement j'ai rien
si j'attends 2 ou 3 secs ça marche bien

c grave docteur ?
Commenter la réponse de cs_hustler
Messages postés
14565
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
13 octobre 2019
136
0
Merci
Bonjour,

Je ne l'ai jamais vu, mais il semble que c'est "normal".

http://nhen0039.chez-alice.fr/index.php
Commenter la réponse de NHenry