Problème code en vb

fab101 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention   -  
fab101 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention   -
boujour a tous et a toute

voila j'ai fait un code en vb

Code:

Sub copie1()

Dim i As Integer
Dim db As DAO.Database
Dim ajout As DAO.Recordset
Dim tbl As DAO.Recordset
Dim fld()
Dim modif As DAO.Recordset
Dim mot As String

mot = "serveur1"


Set db = CurrentDb

Set tbl = db.OpenRecordset("select * from salut where nom_serveur ='" & mot & "';")
Set ajout = db.OpenRecordset("select * from temporaire where nom_serveur ='" & mot & "';")

Do Until ajout.EOF
tbl.AddNew
For i = 1 To ajout.Fields.Count - 1
tbl.Fields(i) = IIf(Len(ajout.Fields(i)) <> 0, ajout.Fields(i), tbl.Fields(i))


Next
ajout.MoveNext

If tbl.EOF Then ' regarde si le record est pas en doublon oef doit etre vrai
tbl.Update
tbl.MoveNext
End If
Loop
End Sub



mais lordque je l'execute rien ne se passe
alors que il devrait copier les données dans une ligne d'une table a une autre

si vous avez la reponse

merci!!!!!!
A voir également:

3 réponses

Utilisateur anonyme
 
Salut,

ne serait-ce pas :

tbl.Recordset.Update
... perso, je fais un update à chaque recordset et ça fonctionne.

Lupin

~L'essentiel est invisible pour les yeux~
~On ne voit bien qu'avec le coeur~
0
fab101 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention   2
 
merci de ta reponse

mais lorsque je compile il me met une erreur sur recordset

et me marque menbre de methode ou de données introuvable
0
Utilisateur anonyme
 
re :

... en fait mon code est attaché sur un objet data!
... voici mon code, peut-être cela te donnera-t-il une idée !

With dataStat.Recordset
.AddNew
..MOIS = Date
..HoAn = tHoAn
..FeAn = tFeAn
..GaAn = tGaAn
..FiAn = tFiAn
..TotAn = tTotAn
.Update
End With

Lupin

~L'essentiel est invisible pour les yeux~
~On ne voit bien qu'avec le coeur~
0
Utilisateur anonyme > Utilisateur anonyme
 
re :

... je pensais que peut-être c'est ici le problème :

tbl.AddNew

... ne serait-ce pas plutôt :

tbl.Recordset.AddNew

Lupin

~L'essentiel est invisible pour les yeux~
~On ne voit bien qu'avec le coeur~
0
Utilisateur anonyme > Utilisateur anonyme
 
encore :

... là je me suis gouré je crois :(

... en observant mon code, je vois ceci :

tbl.UpdateRecord -> puisque tbl est un recordset !

Lupin

~L'essentiel est invisible pour les yeux~
~On ne voit bien qu'avec le coeur~
0
fab101 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention   2
 
salut
deja merci pour ton aide
en fait

c'est bon j'ai trouve
ce qui n'allait pas

maintenant grace au code precedent

j'ai fait une boucle
Function import()
Dim asdb As DAO.Database
Dim tbl As DAO.Recordset

Set db = CurrentDb
Set tbl = db.OpenRecordset("temporaire", dbOpenDynaset)


While Not tbl.EOF

mot = tbl("nom_serveur")

Do Until mot = ""

Call modif


Loop

Wend

End Function


ma fonction efface un a un les enrgistrement de la table temporaire
le problème c'est quan j'arrive au dernier il l'efface donc ca va
et ensuite le programme bug il met aucun enregistrement en cours

ce qui est normal a priori puisqui il n'y a plus
d'enregistrement
et yaurait til un moyen de faire une fenetre msg box
disant que c'est fini

mercii
0