VBA/Access transferer les champs d' 1 enreg. sur une autre table ? - VB/VBA/VBS - Programmation
Marsh Posté le 17-03-2003 à 22:34:23
tu ouvres un recordset sur chaque table, et pour l'enregistrement que tu veux copier, tu boucles sur les champs pour assigner chacun de la table source vers celle de destination, en ayant pris soin, au préalable, de te positionner correctement dans la source, et préparé l'ajout d'un nouvel enregistrement dans la seconde. 
 
Je crois que le code sera plus court que ce que je viens d'énoncer 
Marsh Posté le 18-03-2003 à 03:11:37
merci pour ta reponse ,  
 
bon j' ai essayer de faire un truc mais j' ai une erreure avec mon findfirst qui marche pas , je pige pas  
X est mon numero "numlivre" (donc l' enregistrement à deplacer de la table livre à livreperdu) 
 
_____________________________________________________ 
ch = Chr$(34) & "NumLivre" & " = " & X & Chr$(34) 
Set RS = db.TableDefs("livre" ).OpenRecordset(dbOpenSnapshot) 
RS.FindFirst ch 
Set RS2 = db.TableDefs("livreperdu" ).OpenRecordset(dbOpenTable) 
 
For i = 0 To RS.Fields.Count - 1 
    RS2.addnew 
    RS2.Fields(i) = RS.Fields(i) 
    RS2.update 
Next 
___________________________________________________ 
 
J' ai l' umpression d' avoir fait un gros gloubiglouba là ,  
y aurait pas un moyen plus simple avec une requête ?
Marsh Posté le 18-03-2003 à 10:34:58
il manque un truc dans ton code: boucler sur les fields, parce que là tu essaies d'assigner directement la collection, et cela ne peut marcher.
Marsh Posté le 18-03-2003 à 11:02:08
Dans du code, par exemple ... 
docmd.runsql "INSERT INTO matable1 SELECT * FROM matable2" 
Marsh Posté le 18-03-2003 à 13:30:37
merci à tous les deux , avec ca je devrais m' en sortir  
 
va raiment falloir que je révise mon SQL , c' est la honte 
Marsh Posté le 18-03-2003 à 13:31:08
| Gulien a écrit :   | 
 
+1 
Marsh Posté le 18-03-2003 à 14:53:44
OUF ayé ca marche , merci X1000  
 
 
c' est quand meme plus zoli: 
_______________________________________________ 
ch = "insert into LivrePerdu select * from Livre where numlivre = " & X 
Set QD = db.CreateQueryDef("" ) 
QD.SQL = ch 
QD.Execute 
________________________________________________
Marsh Posté le 17-03-2003 à 22:16:37
voila j' ai deux tables de structure identique ,
quelle la manière la plus simple de transferer tous les gens d' un enregistrement de la table 1 sur la table 2 ?
merci